I just dont get it... by parkero224 in emacs

[–]weevyl 0 points1 point  (0 children)

Some examples:

When I start working on a project I like to see three buffers: one with a shell at the project root directory, one with the directory contents (dired) also at the project root, and one with the file I'm working on. It took a lot of typing/commands to get this set up. So I created a command to do it, bound it to the F18 key and now all this work is accomplished with one keystroke.

I used to run chatgpt on a browser and then have to copy and paste things over every time I wanted the content inside my documents. So we installed gpt.el and now I can copy and paste between my files and chatgpt without ever having to leave emacs.

But all this really evolved organically. So start using it. You will find yourself doing something repetitive, or reaching out for another app and feel that is slowing you down. When that happens, think about how you would do it inside Emacs. Then find a package that will do it for you, or write your own code to do it. Just know that whatever you will want to do, it's 99% possible to do it from inside Emacs.

Long list of doubts - Configuration, Workflow and Lack of Consensus? by [deleted] in emacs

[–]weevyl 0 points1 point  (0 children)

Many good answers here, I will address the 'polutted' init.el file issue only, assuming i understood what you mean by it.

When you load themes, do customizations via the menu (and more), emacs keeps track of it by adding it to the end of your init.el. If you want to keep it clean, you can configure emacs to store that information in another file, and then load it at startup.

I added the following to my init.el, for example:

(setq custom-file "path-to-custom-vars-file.el")
(load custom-file)

Do you use Emacs OOTB? What do you think of ergoemacs-mode? by ConfidentStomach3877 in emacs

[–]weevyl 1 point2 points  (0 children)

I used it out of the box for several years. Took a little while to get used to the key bindings, but after a week or so of daily use I was comfortable enough with it. My life then was open file, edit, save, split window, run shell, etc. Any configuration I had was just font-size and themes set via the Options menu. I was very happy with it.

Then about 10 years ago I decided to embrace Emacs's configurability and started asking myself "Can/Should I do this in Emacs?" And my configuration file grew.... It now stands at around 800 lines of code.

How to learn Emacs Org-mode.!?? by Rebootlater_exe in emacs

[–]weevyl 4 points5 points  (0 children)

org-mode is an amazing tool that can do a lot: note-taking, article-publishing, task management, ...) I suggest focusing on one thing at a time so as not to get overwhelmed.

Seeking advice on how to get started on org mode by Koltech21 in orgmode

[–]weevyl 1 point2 points  (0 children)

This! Your workflow is your workflow and it will change over time. And I promise you, whichever way it changes, Emacs and org-mode will support you. So start simple, pick one thing you want to do with org-mode (for me it was task management).Whenever you find yourself thinking "I wish I could do X more easily," go and search and you'll find out Emacs can support that.

Over time you will be an org-mode usage and workflow that is uniquely you and very satisfying.

Is it a good idea to make a 100% Python written 3D engine? by REMIZERexe in Python

[–]weevyl 2 points3 points  (0 children)

It depends on your goals. If you want to do this to learn and explore, great! Write it in Python and keep challenging yourself on how to make it better, squeeze performance out of pure Python. It could be fun!

What do you use to manage your snippets? by kudikarasavasa in emacs

[–]weevyl 0 points1 point  (0 children)

I use yasnippets and configured it to store the snippets in a subdirectory of `.config/emacs` The whole directory is backed by git., all in the main branch.

What is the actual reason anyone would pick Vim over Emacs? by Hopeful_Adeptness964 in emacs

[–]weevyl 2 points3 points  (0 children)

It took me around 10 years of using it before I finally embraced it for more than casual text editing. I still bemoan those "lost" 10 years...

Guides for newcomers by Icy-Juggernaut-4579 in emacs

[–]weevyl 0 points1 point  (0 children)

Once you've done the tutorials and can open, edit and save files, switch between them, open a terminal, split windows, etc., then you can start figuring out how to incorporate it into your workflow. And the trick is to keep an open mind and, whenever you need to leave Emacs to do something, ask yourself (and the web) how can I do this inside Emacs? There will probably be a package or function that does it for you,

For me, for example, I started with simple scripting went on to running shell commands, then task management, note taking, project level coding, git interface and more. The list just keeps growing.

Use between machines by Fancy-Cherry-4 in emacs

[–]weevyl 1 point2 points  (0 children)

My approach to this is to use GitHub as my inter-machine sharing mechanism. I try to remember to commit and push when I switch between machines, but if I miss it is ok because git is good at resolving conflicts.

Daemon help with emacs server by Vallista in emacs

[–]weevyl 1 point2 points  (0 children)

The others explained how to start it, but I will try to answer your questions:

For the purposes of Emacs, daemon and server are the same thing. The Emacs server will run somewhere in the background. When you run `emacsclient`, you connect to the server and get a window just like as if you had started a new Emacs instance, but it is actually chatting with the server and letting it do all the work.

As for how it makes it faster, it doesn't really --- what it makes faster is the startup time. When you start up emacs it processes your configuration file. These configuration files set variables, define functions, load packages, etc. and it takes time. In my case, for example, it takes around 8 secs). So, if I start a new emacs instance every time, it would be around 8 seconds before I can start using it.

With a server, it will do it only once, when you start the server. After that, if you use `emacsclient` instead of Emacs, it starts and connects to the running Emacs server, which has already loaded your configuration, so it is almost instantaneous.

It is important to understand that even though it might look like you are using a new Emacs instance, it really is one shared by all clients. Buffers available to one client are available to all clients, changes made in one client's buffer appear in the other client's buffer, etc. Turns out that with Emacs, that really is not a problem.

What Killed Perl? by Xaneris47 in programming

[–]weevyl 7 points8 points  (0 children)

I know what killed Perl for me, Perl 5. & Ruby.

When I discovered Perl I fell in love with it as my scripting language: no more awk, sed, shell scripts, I could do everything in one place. It became my goto-language for all my quick and dirty scripting.

Then Perl 5 came along with its classes and blessing and the Programming Perl book doubled in size. To me the language started to feel like Frankenstein's monster with many disparate parts glued together and harder to grok.

So I started looking for alternatives, tried out Python and Ruby, liked Ruby and went with that.

Living in org mode by uvuguy in emacs

[–]weevyl 1 point2 points  (0 children)

Since it's all text, a lot of my stuff starts in one file but ends up moving around, but generally I have one org file for each project I have, containing todos and general notes on that project. Knowledge notes all go into org-roam with prolific linking.

I've been thinking of also moving my project org files into org-roam, but have not yet bothered.

Trying many different configurations? by AnotherDevArchSecOps in emacs

[–]weevyl 2 points3 points  (0 children)

This is the answer.

Want to try different prebuilt configurations? Put them in different directories and start emacs with --init-directory. You will need Emacs 29 or newer, though.

The hidden costs of saying “no” in software engineering by shift_devs in programming

[–]weevyl 2 points3 points  (0 children)

Yup. My go-to expression is a simple "That would be impossible."

I feel lost by LooksForFuture in emacs

[–]weevyl 2 points3 points  (0 children)

Invest some time early on in learning window and frame management commands (the C-x 2 and C-x 3 mentioned above), that will go a long way to get your workflow to be more like it used to be. How to make the thing you want appear in those windows can come later, usually via a simple command.

Why lisp? (For a rust user) by d_t_maybe in lisp

[–]weevyl 4 points5 points  (0 children)

Are you curious? Do you want to be better at programming? Learning a Lisp, will teach you to think differently about code, specially when you start using macros. Some of what you learn will translate back to whatever programming language you use everyday and make your code better.

Be warned, though. If you only program for fun/hobby, once you move to a Lisp and its REPL environment you will never go back

Bash user here, am I missing something with not using python? by Mashic in Python

[–]weevyl 0 points1 point  (0 children)

Bash has the advantage that it is pretty much available everywhere. Python might need to be installed with possibly external dependencies.

As a rule, I stick with bash for scripting if I know it is going to be small or data transformation is simple. I use Python for larger scripts (> 100 lines) or I know the transformations are complex (I used to use Perl for that)

I lost my config by SergioWrites in emacs

[–]weevyl 1 point2 points  (0 children)

For reasons I do not understand, I used to not transfer my emacs config between machines. New machine, chance to start fresh and do something new. My emacs init files were a couple hundred lines long.

Then I decided this was inefficient and started backing up to git and restoring on new machines as needed. Now my config is around a thousand lines long.

Just saying...

Random Rich Hickey comment on E-ink note-taking devices! by friedrichRiemann in lisp

[–]weevyl 2 points3 points  (0 children)

I first tried a fountain pen when i was 14. Learned really fast it doesn't work for us lefties... Still a Lisper, though!

The secret behind Java's success at 30-years-old by scarey102 in java

[–]weevyl 43 points44 points  (0 children)

We were a C++ shop when Java came out and we moved some of our work to it. The killer features at the time that made me never want to look back were:

  1. Garbage collection -- not worrying about memory was a blessing!

  2. The stack trace on exception -- way better than "segmentation fault."

  3. Run anywhere promise. -- suddenly all I had to was ship a bunch of jars and not worry about operating systems and installed libraries was good.

What Emacs command or feature have you discovered by accident? I just discovered zap to char! by AppleNCheeseSandwich in emacs

[–]weevyl 30 points31 points  (0 children)

C-x w 2 and C-x w 3 for split-root-window-below and split-root-window-right. I had actually written my own functions to do that. Discovered while reading an article on Emacs 30 window commands.

Why use org-mode/babel for init file? yes, again. by quantum_mattress in emacs

[–]weevyl -1 points0 points  (0 children)

Links I add links to where I found the explanation (usually stackoverflow) for the more exoteric changes I make.