Below you will find pages that utilize the taxonomy term “emacs”
Posts
A Note On X Where X = "Emac's Combobulate Package"
Lets inspect combobulate-navigate-previous by step into the function.
The following functions are called in order:
combobulate-navigate-previous combobulate--move-point-to-node responsible for display and move node. (combobulate--navigate 'previous) pass previuos to combobulate--navigate combobulate--nav-get-prev-sibling get sibling node by query its parents node and get all of its nodes. sibling nodes are arrange in order, so getting previous or next siblings nodes is easy. combobulate--nav-get-sibling-nodes outputs list of nodes seq filter check for matched node.
Posts
A Note On X Where X = "Making Evil Mode Not Awkward With Zsh Completion In Doom Emacs Vterm"
Set pt value to pos fix awkward completion behavior in vterm.
(defun vterm-goto-char (pos) "Set point to POSITION for vterm. The return value is `t'when point moved successfully. It will reset to original position if it can't move there." (when (and vterm--term (vterm-cursor-in-command-buffer-p) (vterm-cursor-in-command-buffer-p pos)) (let ((moved t) (origin-point (point)) pt cursor-pos succ) (vterm-reset-cursor-point) ;; Anak: this line cause weird behavior with auto completion (setq cursor-pos (point)) ;; (setq pt cursor-pos) ;; Anak commented out this line (setq pt pos) ;; Anak added this line and completion in vterm works better.
Posts
Building fundamental in Emacs: How to customize key binding in vanilla Emacs?
When I first get into Emacs, I was a vim user before, so I picked up Doom Emacs without experience with vanilla Emacs. Transition has been smooth so far, but because I never has experience with Vanilla Emacs before when I encounter a bug in Doom Emacs. I always have to first figure out if it is Doom Emacs problem or Emacs problems. Because of this, I put out a new blog series to help me build a stronger foundation of Vanilla Emacs.
Posts
Emacs's Snippet Management Packages Still Use Text-Based Management? Just Use Sqlite!
By now, in <2022-12-08 Thu>, it should be conclusive that any type of contents are best organized/managed using database. Responsibilities of database includes retrieve/store data. That’s it.
However, emacs manages data as text. Advantages of this is simplicity, but, this argument doesn’t even work anymore. why? Emacs supports SQLite as built-in!
I like Emacs because of level of compatibility that it provides, but it frustrates me to realized that open source community is not as collaborative, as a result, Emacs slow to adopts.
Posts
Error log: Error in private config: config.el, (error pdf-info-epdfinfo-program is not executable) and Dependcies conflicts while installing pdf-tools via pdf-tools-install.
Current Solution as of <2022-03-02 Wed>. The solution only works on doom emacs only, I found that pdf-tools must be install with init.el.
I had (package! pdf-tools) and :tools pdf. Dependencies conflict is caused by endable pdf-tools two different ways as shown.
I solved the problem by remove (package! pdf-tools) from packages.el and only keep :tools pdf.
Abit of backstory, I first encounter the problem at a very early stage of using doom emacs (first 2 weeks.
Posts
How to setup a python file to activate specific conda environment using Emacs's conda.el?
I found that default setup for conda.el to be annoying and not robust. Firstly, setting (conda-env-autoactivate-mode t) will output error everytime file. Apparently, from inspecting the code, this is how it is implemented! see below.
(if conda-env-autoactivate-mode ;; already on, now switching off (advice-add 'switch-to-buffer :after #'conda--switch-buffer-auto-activate) (advice-remove 'switch-to-buffer #'conda--switch-buffer-auto-activate)) The error is (error "No such conda environment: %s" name) because input argument name has nil value when a file that is switched to don’t have environment.
Posts
How to solve hanging tramps?
Note that information I describe here can be found at FAQ page of TRAMP user manual, see here.
From an hour of digging, I discovered that tramp is really specific in term of how it read terminal prompt (aka PS1 environment variable.). It also limited in types of terminal, specified by TERM environment variables. TERM must match tramp terminal default setting (tramp-terminal-type).
I am using zsh shell in my remote compute.
Posts
Markdown Note
Blog blog X implementation where X = “markdown-preview” in Emacs implementation markdown-preview pass HTML file to browse-url browse-url has the following algorithm
prepare argument to use with specify url check for “url handle” (which is prefix to url e.g. file:) expand file name according to “url handle” find suitable function to browse url setup environment variable for display e.g. DISPLAY and WAYLAND_DISPLAY apply function with argument
Posts
Most Efficient Workflow To "Lookup" Documentations On Programming Language.
The normal workflow of lookup documentation would be to search google, stack-overflow, etc. Alternatively, if you are using IDE, IDE will lookup documentation for you, for example goto-definition etc. Very convenience. What else do you need?
Although, searching online directly is not the best approach, it is everyone last line of defense. On the other hands, IDE is as good as it gets. However, the problem with IDE is that it is context specific.