diff --git a/home/common/nvim/blink-cmp.lua b/home/common/nvim/blink-cmp.lua
index 8ae4f6c..113fda6 100644
--- a/home/common/nvim/blink-cmp.lua
+++ b/home/common/nvim/blink-cmp.lua
@@ -29,7 +29,7 @@ require 'blink-cmp'.setup({
     menu = {
       auto_show = true,
       border = 'rounded',
-      direction_priority = { 'n' },
+      direction_priority = { 'n', 's' },
       draw = {
         components = {
           kind_icon = {
@@ -61,9 +61,18 @@ require 'blink-cmp'.setup({
   },
 
   sources = {
-    default = { 'lsp' },
+    default = {
+      'lsp',
+      'emoji',
+    },
     cmdline = {},
-    providers = {},
+    providers = {
+      emoji = {
+        module = "blink-emoji",
+        name = "Emoji",
+        score_offset = 1,
+        opts = { insert = true },
+      }
+    },
   },
-
 })
diff --git a/home/common/nvim/default.nix b/home/common/nvim/default.nix
index 57e68e6..e5adcd9 100644
--- a/home/common/nvim/default.nix
+++ b/home/common/nvim/default.nix
@@ -46,6 +46,8 @@ in
     ];
 
     plugins = with pkgs.vimPlugins; [
+      blink-compat
+      blink-emoji-nvim
       friendly-snippets
       go-nvim
       targets-vim
@@ -80,22 +82,6 @@ in
         config = lib.fileContents ./blink-cmp.lua;
       }
 
-      {
-        plugin = pkgs.vimUtils.buildVimPlugin {
-          name = "blink.compat";
-          src = pkgs.fetchFromGitHub {
-            owner = "saghen";
-            repo = "blink.compat";
-            rev = "5ca8848c8cc32abdc980e5db4f0eb7bb8fbf84dc"; # Dec 25, 2024
-            hash = "sha256-tFQeKyqdo3mvptYnWxKhTpI4ROFNQ6u3P8cLqtlsozw=";
-          };
-        };
-        type = "lua";
-        config = ''
-          require('blink.compat').setup()
-        '';
-      }
-
       {
         plugin = pkgs.vimUtils.buildVimPlugin {
           name = "inlay-hints";