Emacs

337 readers
1 users here now

A community for the timeless and infinitely powerful editor. Want to see what Emacs is capable of?!

Get Emacs

Rules

  1. Posts should be emacs related
  2. Be kind please
  3. Yes, we already know: Google results for "emacs" and "vi" link to each other. We good.

Emacs Resources

Emacs Tutorials

Useful Emacs configuration files and distributions

Quick pain-saver tip

founded 2 years ago
MODERATORS
1
 
 

When I first joined Lemmy and created this instance, there was no emacs community with consistent activity. I created the community mostly to see if I could help in the efforts during the Reddit migration and because it's one of the subreddits that I was still visiting regularly.

I was also interested in having some communities where I could have full control to run some experiments: most notably the ability to have all submissions and contents mirrored from Reddit via alien.top.

These experiments and the effort to keep it fresh with content did make this most active emacs community (even without the mirroring bots) but to be honest today it feels out of place. Two years later, the landscape of instances are more of less consolidated and I'm no longer interested in running a community that does not belong to a topic-specific instance.

I strongly believe that there should be a cleaner separation between instances for groups and instances for people, and it would be kind of hypocritical to keep nurturing this community here when there is an instance focused on programming and software tools.

So, effective today, I am removing this community from fediverser.network as the recommended alternative and I'm going to list !emacs@programming.dev as the best place for emacs content. I don't know if there is a standard procedure established for these types, so I'm going to keep the community open for the next 90 days and keep this post pinned until then. On June 1st, I will close down this community altogether.

2
7
Emacs 30.1 released (lists.gnu.org)
submitted 1 week ago by sachac to c/emacs
3
5
EmacsConf 2024 notes (sachachua.com)
submitted 2 months ago by rglullis to c/emacs
4
6
submitted 2 months ago by rglullis to c/emacs
5
2
submitted 3 months ago by rglullis to c/emacs
6
7
 
 

cross-posted from: https://lemmy.sdf.org/post/25098327

I've been using gptel for a couple of days and it is absolutely bonkers. It is Magit-level of thought out. However I enjoyed relying less on the transient menu, and rather focus on writing my own wrapper functions via gptel-request.

Honestly I've been kind of an AI skeptic until very recently, and gptel in addition to this article were what pushed me over.

8
9
 
 

I am using counsel with projectile mainly for two use cases:

  • counsel-projectile-ag for project-wide grep
  • counsel-projectile-find-file to get a list of file names by typing some characters.

I usually have them bound to C-C C-sand C-C C-f, which used to work well with any other major modes.

Recently, I switched to using tree-sitter and set it up to use python-ts-mode. I also started using lsp-mode. Since then, whenever I open any python file, C-c C-s and C-c C-f are bound to the functions from python-mode. I've tried adding

(unbind-key "C-c C-s" python-ts-mode-map)
(unbind-key "C-c C-f" python-ts-mode-map)

to python-ts :config on use-package, and similar to python-mode, but I am still getting

python-ts-mode-map), which is an interactive native-compiled Lisp
function in ‘python.el’.

It is bound to C-c C-s.

(python-shell-send-string STRING &optional PROCESS MSG)

Send STRING to inferior Python PROCESS.
When optional argument MSG is non-nil, forces display of a
user-friendly message if there’s no process running; defaults to
t when called interactively.

[back]

What would be the correct way to set the configuration to get this always bound to the counsel-projectile commands whenever I open a python file?

Caveat: I am using NixOS home-manager to manage my emacs installation, which means that I am not manipulating my .emacs directly.

The relevant sections of my nix file.

usePackage = {
python-ts-mode = {
        enable = true;
        mode = [ ''("\\.py\\'" . python-ts-mode)'' ];
        hook = [
          "hs-minor-mode"
          "(python-ts-mode . python-isort-on-save-mode)"
        ];
        bind = {
          "C-c C-s" = "counsel-projectile-ag";
          "C-c C-f" = "counsel-projectile-find-file";
        };
        config = ''
        (unbind-key "C-c C-s" python-ts-mode-map)
        (unbind-key "C-c C-f" python-ts-mode-map)
        '';
      };

python-mode = {
        enable = true;
        bind = {
          "C-c C-s" = "counsel-projectile-ag";
          "C-c C-f" = "counsel-projectile-find-file";
        };
        config = ''
            (unbind-key "C-c C-s" python-mode-map)
            (unbind-key "C-c C-f" python-mode-map)
        '';
      };
lsp-mode = {
        enable = true;
        command = [ "lsp" ];
        hook = [
          "((python-ts-mode java-mode vue-mode javascript-ts-mode typescript-ts-mode) . lsp-deferred)"
        ];
        bind = {
          "C-c r r" = "lsp-rename";
          "C-c r f" = "lsp-format-buffer";
          "C-c r g" = "lsp-format-region";
          "C-c r a" = "lsp-execute-code-action";
          "C-c f r" = "lsp-find-references";
          "C-c C-s" = "counsel-projectile-ag";
          "C-c C-f" = "counsel-projectile-find-file";
        };
      };
counsel = {
        enable = true;
        bind = {
          "C-x C-d" = "counsel-dired-jump";
          "C-x C-r" = "counsel-recentf";
          "C-x C-y" = "counsel-yank-pop";
        };
        diminish = [ "counsel-mode" ];
      };

      counsel-projectile = {
        enable = true;
        bind = {
          "C-c C-s" = "counsel-projectile-ag";
          "C-c C-f" = "counsel-projectile-find-file";
        };
      };
};

Any help appreciated.

10
11
6
AI in Emacs (willschenk.com)
submitted 5 months ago by rglullis to c/emacs
12
13
 
 

Is ellama the recommended package to use for code assistance on emacs? @emacs

I'm getting some useful results when asking questions to Mistral (via Brave Browser) when working with programming languages that I am learning. What is the current recommended approach to get it working with #emacs?

14
 
 

So many cool posts about #emacs recently but I am not sure the microblog UI is the best for them. Ideally, I wish we could group AP actors to announce any activity by a certain hashtag, so they could become posts in something like #lemmy instead.

In the meantime, how do I get more of this emacs conversation on @emacs ?

15
4
submitted 6 months ago by rglullis to c/emacs
16
17
 
 

Its been a few weeks, but I didn't see any post about it here. In case you aren't following the emacs-devel list, Eli Zaretskii, the current MS-Windows maintainer, is asking for anyone to take over day to day issue management and supporting the port as he's wanting to step down from the role.

18
19
 
 

Take a look at the python code above. Because the word filter is a builtin function it gets highlighted differently than the rest of the code. The problem is, none of the occurrences of the word here relate to the builtin function and it semantically should not be any different from any other decorator or callable.

I honestly think that this is a bug with the syntax highlighter (as it should be easy to discern between a built-in function call and a method from another class, but if I could just disable syntax highlighting in python-mode for the specific keyword, it should be fine? Is that possible to do in elisp?

20
21
7
Keyboard Macros are Misunderstood (www.masteringemacs.org)
submitted 8 months ago by mao@lemmy.sdf.org to c/emacs
22
23
6
submitted 10 months ago by rglullis to c/emacs
24
9
submitted 10 months ago by rglullis to c/emacs
25
2
How to Show Row Numbers in Emacs (linuxrenaissance.com)
submitted 10 months ago by rglullis to c/emacs
view more: next ›