forked from muhaaliss/mydotfiles
Emergency backup
This commit is contained in:
parent
91aab20957
commit
eea5cd4488
4 changed files with 785 additions and 0 deletions
62
.bash_aliases
Normal file
62
.bash_aliases
Normal file
|
@ -0,0 +1,62 @@
|
|||
# DNF alias
|
||||
alias upd="sudo dnf update"
|
||||
alias ins="sudo dnf install"
|
||||
alias rmv="sudo dnf remove"
|
||||
alias ser="dnf search"
|
||||
|
||||
|
||||
|
||||
# History alias
|
||||
cl () {
|
||||
FILE=$HOME/.bash_history
|
||||
if [ -f "$FILE" ]; then
|
||||
rm $FILE
|
||||
clear
|
||||
history -cw
|
||||
else
|
||||
clear
|
||||
history -cw
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
||||
# Emacs no gui
|
||||
alias emacs="emacs -nw $argv"
|
||||
alias e="emacs -nw $argv"
|
||||
|
||||
|
||||
|
||||
# Quick way to get out of current directory
|
||||
alias cd..='cd ..'
|
||||
alias ..="cd .."
|
||||
alias ...="cd ../../../"
|
||||
alias ....="cd ../../../../"
|
||||
alias .....="cd ../../../../"
|
||||
alias .4="cd ../../../../"
|
||||
alias .5="cd ../../../../.."
|
||||
|
||||
|
||||
|
||||
# Colorize the grep command output for ease of use (good for log files)
|
||||
alias grep="grep --color=auto"
|
||||
|
||||
|
||||
|
||||
# Make mount command output pretty and human readable format
|
||||
alias mount="mount |column -t"
|
||||
|
||||
|
||||
|
||||
# Stop after sending count ECHO_REQUEST packets
|
||||
alias ping="ping -c 5"
|
||||
|
||||
|
||||
|
||||
# Displays the size of each item, and then sorts it by size, in a single column, with a notation to indicate the kind of file
|
||||
alias lt='ls --human-readable --size -1 -S --classify'
|
||||
|
||||
|
||||
|
||||
# Copy progress bar
|
||||
alias cpv='rsync -ah --info=progress2'
|
100
.emacs.d/bookmarks
Normal file
100
.emacs.d/bookmarks
Normal file
|
@ -0,0 +1,100 @@
|
|||
;;;; Emacs Bookmark Format Version 1;;;; -*- coding: utf-8-emacs; mode: lisp-data -*-
|
||||
;;; This format is meant to be slightly human-readable;
|
||||
;;; nevertheless, you probably don't want to edit it.
|
||||
;;; -*- End Of Bookmark File Format Version Stamp -*-
|
||||
(("Projeler -> Projeler dizini"
|
||||
(filename . "~/Projeler/")
|
||||
(front-context-string . "my-dot-files\n d")
|
||||
(rear-context-string . "60 Kas 7 15:39 ")
|
||||
(position . 169))
|
||||
("Emacs Shortcut -> 8 Doom"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Doom emacs kı")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 6623))
|
||||
("Emacs Shortcut -> 7 Help"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Yardım kısayo")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 6048))
|
||||
("Emacs Shortcut -> 6 Bracket"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Parantez üzer")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 5410))
|
||||
("Emacs Shortcut -> 5 Window"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Pencere kısay")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 3463))
|
||||
("Emacs Shortcut -> 4 Searching"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Arama kısayol")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 3204))
|
||||
("Emacs Shortcut -> 3 Moving"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Hareket kısay")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 2269))
|
||||
("Emacs Shortcut -> 2 Editing"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Düzenleme kıs")
|
||||
(rear-context-string . "--------------|\n")
|
||||
(position . 868))
|
||||
("Emacs Shortcut -> 1 File"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Dosya kısayol")
|
||||
(rear-context-string . "-+------------|\n")
|
||||
(position . 432))
|
||||
("Emacs Shortcut -> 0 Descriptions"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "** Emacs kısayol")
|
||||
(rear-context-string . "büyük yazıldı.\n\n")
|
||||
(position . 173))
|
||||
("Emacs -> 6 Shortcut"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . "(global-set-key ")
|
||||
(rear-context-string . "==============\n\n")
|
||||
(position . 16851))
|
||||
("Emacs Shortcut"
|
||||
(filename . "~/Belgeler/ORG/Emacs Shortcut.org")
|
||||
(front-context-string . "#+title: Emacs K")
|
||||
(rear-context-string)
|
||||
(position . 1))
|
||||
("Emacs -> 7 Load .el files"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string)
|
||||
(rear-context-string . "================")
|
||||
(position . 18567))
|
||||
("Emacs -> 5 Hooks"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . "(add-hook 'cloju")
|
||||
(rear-context-string . "==============\n\n")
|
||||
(position . 16320))
|
||||
("Emacs -> 4 Buffer"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . ";; Complete file")
|
||||
(rear-context-string . "==============\n\n")
|
||||
(position . 14630))
|
||||
("Emacs -> 3 Editing"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . ";; Make typing d")
|
||||
(rear-context-string . "==============\n\n")
|
||||
(position . 5285))
|
||||
("Emacs -> 2 Interface"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . ";; Hide welcome ")
|
||||
(rear-context-string . "==============\n\n")
|
||||
(position . 1821))
|
||||
("Emacs -> 1 Package"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . ";; Package signa")
|
||||
(rear-context-string . "==============\n\n")
|
||||
(position . 230))
|
||||
("Emacs -> 0 init.el"
|
||||
(filename . "~/.emacs.d/init.el")
|
||||
(front-context-string . "22/10/2023\n;;;;;")
|
||||
(rear-context-string . "e\n;; Edit: ")
|
||||
(position . 101))
|
||||
)
|
532
.emacs.d/init.el
Normal file
532
.emacs.d/init.el
Normal file
|
@ -0,0 +1,532 @@
|
|||
;;; ==================================================
|
||||
;;; -------------> Author: Muha Aliss <---------------
|
||||
;;; -------------> Mail: muhaaliss@pm.me <------------
|
||||
;;; -------------> Create: 07/09/2023 <---------------
|
||||
;;; -------------> Edit: 21/09/2023 <-----------------
|
||||
;;; ==================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; -------------------> Package <--------------------
|
||||
;;; ==================================================
|
||||
|
||||
;; Package signature check disable
|
||||
(when (version<= "26.1" emacs-version)
|
||||
(setq package-check-signature nil))
|
||||
|
||||
;; Edit package sources
|
||||
(require 'package)
|
||||
(add-to-list 'package-archives '("MELPA" . "https://melpa.org/packages/") t)
|
||||
|
||||
;; Initializes the package infrastructure
|
||||
(package-initialize)
|
||||
|
||||
;; Define the package-selected-packages variable and assign the packages i want to it.
|
||||
(setq package-selected-packages '(gnu-elpa gnu-elpa-keyring-update use-package doom-themes bookmark lsp-mode all-the-icons yasnippet lsp-treemacs helm-lsp projectile hydra flycheck company avy which-key helm-xref dap-mode elpy))
|
||||
|
||||
;; Search packages in installed packages,
|
||||
(when (cl-find-if-not #'package-installed-p package-selected-packages)
|
||||
; refresh packages list,
|
||||
(package-refresh-contents)
|
||||
; install the packages.
|
||||
(mapc #'package-install package-selected-packages))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; ------------------> Interface <-------------------
|
||||
;;; ==================================================
|
||||
|
||||
;; Hide welcome screen
|
||||
(setq inhibit-splash-screen t)
|
||||
|
||||
;; Open bookmark window by default
|
||||
(list-bookmarks)
|
||||
(switch-to-buffer "*Bookmark List*")
|
||||
|
||||
;; Display line numbers
|
||||
(when (version<= "26.1" emacs-version)
|
||||
(global-display-line-numbers-mode))
|
||||
|
||||
;; Set cursor to i-beam
|
||||
(setq-default cursor-type 'bar)
|
||||
|
||||
;; Highlight Current Line
|
||||
(global-hl-line-mode 1)
|
||||
|
||||
;; Up/Down arrow move based on logical lines (newline char) or visual line
|
||||
(setq line-move-visual nil)
|
||||
|
||||
;; Show cursor position within line
|
||||
(column-number-mode 1)
|
||||
|
||||
;; org mode syntax color embeded source code
|
||||
(setq org-src-fontify-natively t)
|
||||
|
||||
;; Set a theme
|
||||
(use-package doom-themes
|
||||
:ensure t
|
||||
:config
|
||||
; Global settings (defaults)
|
||||
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
|
||||
doom-themes-enable-italic t) ; if nil, italics is universally disabled
|
||||
(load-theme 'doom-one t)
|
||||
; Enable flashing mode-line on errors
|
||||
(doom-themes-visual-bell-config)
|
||||
; Enable custom neotree theme (all-the-icons must be installed!)
|
||||
(doom-themes-neotree-config)
|
||||
; or for treemacs users
|
||||
(setq doom-themes-treemacs-theme "doom-atom") ; use "doom-colors" for less minimal icon theme
|
||||
(doom-themes-treemacs-config)
|
||||
; Corrects (and improves) org-mode's native fontification.
|
||||
(doom-themes-org-config))
|
||||
|
||||
;; Set default window size
|
||||
(if (display-graphic-p)
|
||||
(progn
|
||||
(setq initial-frame-alist
|
||||
'(
|
||||
(tool-bar-lines . 0)
|
||||
(width . 110) ; chars
|
||||
(height . 40) ; lines
|
||||
(left . 50)
|
||||
(top . 50)))
|
||||
(setq default-frame-alist
|
||||
'(
|
||||
(tool-bar-lines . 0)
|
||||
(width . 110)
|
||||
(height . 40)
|
||||
(left . 50)
|
||||
(top . 50))))
|
||||
(progn
|
||||
(setq initial-frame-alist '( (tool-bar-lines . 0)))
|
||||
(setq default-frame-alist '( (tool-bar-lines . 0)))))
|
||||
|
||||
;; Set default font
|
||||
(cond
|
||||
((string-equal system-type "windows-nt") ; Microsoft Windows
|
||||
(when (member "Consolas" (font-family-list))
|
||||
(set-frame-font "Consolas-12" t t)))
|
||||
((string-equal system-type "darwin") ; macOS
|
||||
(when (member "Menlo" (font-family-list))
|
||||
(set-frame-font "Menlo-12" t t)))
|
||||
((string-equal system-type "gnu/linux") ; linux
|
||||
(when (member "Source Code Pro" (font-family-list))
|
||||
(set-frame-font "Source Code Pro-12" t t))))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; -------------------> Editing <--------------------
|
||||
;;; ==================================================
|
||||
|
||||
;; Turn on/off line wrap for current buffer.
|
||||
(global-visual-line-mode 1)
|
||||
|
||||
;; Make typing delete/overwrites selected text
|
||||
(delete-selection-mode 1)
|
||||
|
||||
;; Set default tab char's display width to 4 spaces
|
||||
(setq-default tab-width 4)
|
||||
|
||||
;; Make indent commands use space only (never tab character)
|
||||
(setq-default indent-tabs-mode nil)
|
||||
|
||||
;; Make tab key do indent first then completion.
|
||||
(setq-default tab-always-indent nil)
|
||||
|
||||
;; Set highlighting brackets
|
||||
(show-paren-mode 1)
|
||||
(setq show-paren-style 'mixed)
|
||||
|
||||
;; Add support for pretty symbols mode
|
||||
(global-prettify-symbols-mode 1)
|
||||
(defun my-add-pretty-symbol ()
|
||||
"make some word display as Unicode symbols"
|
||||
(setq prettify-symbols-alist
|
||||
'(
|
||||
("->" . 8594) ; → 8594
|
||||
("lambda" . 955) ; λ 955
|
||||
("--->" . 10230) ; ⟶ 10230
|
||||
("=>" . 8658) ; ⇒ 8658
|
||||
("map" . 8614) ; ↦ 8614
|
||||
)))
|
||||
|
||||
;; Hippie expand to words only
|
||||
(setq hippie-expand-try-functions-list
|
||||
'(
|
||||
try-expand-dabbrev
|
||||
try-expand-dabbrev-all-buffers
|
||||
;; try-expand-dabbrev-from-kill
|
||||
try-complete-lisp-symbol-partially
|
||||
try-complete-lisp-symbol
|
||||
try-complete-file-name-partially
|
||||
try-complete-file-name
|
||||
;; try-expand-all-abbrevs
|
||||
;; try-expand-list
|
||||
;; try-expand-line
|
||||
))
|
||||
|
||||
(defun xah-select-line ()
|
||||
"Select current line. If region is active, extend selection downward by line.
|
||||
If `visual-line-mode' is on, consider line as visual line.
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/modernization_mark-word.html'
|
||||
Version: 2017-11-01 2021-03-19 2023-07-16"
|
||||
(interactive)
|
||||
(if (region-active-p)
|
||||
(if visual-line-mode
|
||||
(let ((xp1 (point)))
|
||||
(end-of-visual-line 1)
|
||||
(when (eq xp1 (point))
|
||||
(end-of-visual-line 2)))
|
||||
(progn
|
||||
(forward-line 1)
|
||||
(end-of-line)))
|
||||
(if visual-line-mode
|
||||
(progn (beginning-of-visual-line)
|
||||
(push-mark (point) t t)
|
||||
(end-of-visual-line))
|
||||
(progn
|
||||
(push-mark (line-beginning-position) t t)
|
||||
(end-of-line)))))
|
||||
|
||||
;; Copy current line if no selection
|
||||
(defun xah-copy-line-or-region ()
|
||||
"Copy current line or selection.
|
||||
When called repeatedly, append copy subsequent lines.
|
||||
When `universal-argument' is called first, copy whole buffer (respects `narrow-to-region').
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_copy_cut_current_line.html'
|
||||
Version: 2010-05-21 2022-10-03"
|
||||
(interactive)
|
||||
(let ((inhibit-field-text-motion nil))
|
||||
(if current-prefix-arg
|
||||
(progn
|
||||
(copy-region-as-kill (point-min) (point-max)))
|
||||
(if (region-active-p)
|
||||
(progn
|
||||
(copy-region-as-kill (region-beginning) (region-end)))
|
||||
(if (eq last-command this-command)
|
||||
(if (eobp)
|
||||
(progn )
|
||||
(progn
|
||||
(kill-append "\n" nil)
|
||||
(kill-append
|
||||
(buffer-substring-no-properties (line-beginning-position) (line-end-position))
|
||||
nil)
|
||||
(progn
|
||||
(end-of-line)
|
||||
(forward-char))))
|
||||
(if (eobp)
|
||||
(if (eq (char-before) 10 )
|
||||
(progn )
|
||||
(progn
|
||||
(copy-region-as-kill (line-beginning-position) (line-end-position))
|
||||
(end-of-line)))
|
||||
(progn
|
||||
(copy-region-as-kill (line-beginning-position) (line-end-position))
|
||||
(end-of-line)
|
||||
(forward-char))))))))
|
||||
|
||||
;; Cut current line if no selection
|
||||
(defun xah-cut-line-or-region ()
|
||||
"Cut current line or selection.
|
||||
When `universal-argument' is called first, cut whole buffer (respects `narrow-to-region').
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_copy_cut_current_line.html'
|
||||
Version: 2010-05-21 2015-06-10"
|
||||
(interactive)
|
||||
(if current-prefix-arg
|
||||
(progn ; not using kill-region because we don't want to include previous kill
|
||||
(kill-new (buffer-string))
|
||||
(delete-region (point-min) (point-max)))
|
||||
(progn (if (region-active-p)
|
||||
(kill-region (region-beginning) (region-end) t)
|
||||
(kill-region (line-beginning-position) (line-beginning-position 2))))))
|
||||
|
||||
;; Move the current line up or down by N lines.
|
||||
(defun move-line (n)
|
||||
(interactive "p")
|
||||
(setq col (current-column))
|
||||
(beginning-of-line) (setq start (point))
|
||||
(end-of-line) (forward-char) (setq end (point))
|
||||
(let ((line-text (delete-and-extract-region start end)))
|
||||
(forward-line n)
|
||||
(insert line-text)
|
||||
;; restore point to original column in moved line
|
||||
(forward-line -1)
|
||||
(forward-char col)))
|
||||
|
||||
(defmacro save-column (&rest body)
|
||||
`(let ((column (current-column)))
|
||||
(unwind-protect
|
||||
(progn ,@body)
|
||||
(move-to-column column))))
|
||||
(put 'save-column 'lisp-indent-function 0)
|
||||
|
||||
(defun move-line-up ()
|
||||
(interactive)
|
||||
(save-column
|
||||
(transpose-lines 1)
|
||||
(forward-line -2)))
|
||||
|
||||
(defun move-line-down ()
|
||||
(interactive)
|
||||
(save-column
|
||||
(forward-line 1)
|
||||
(transpose-lines 1)
|
||||
(forward-line -1)))
|
||||
|
||||
;; Delete the matching brackets
|
||||
(defun xah-delete-forward-bracket-pairs (&optional DeleteInnerTextQ)
|
||||
"Delete the matching brackets to the right of cursor including the inner text.
|
||||
e.g. ▮(a b c)
|
||||
|
||||
In lisp code, if DeleteInnerTextQ is true, also delete the inner text.
|
||||
|
||||
After the command, mark is set at the left matching bracket position, so you can `exchange-point-and-mark' to select it.
|
||||
|
||||
This command assumes the char to the right of point is a left bracket or quote, and have a matching one after.
|
||||
|
||||
What char is considered bracket or quote is determined by current syntax table.
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html'
|
||||
Version: 2017-07-02 2023-07-30"
|
||||
(interactive (list t))
|
||||
(if DeleteInnerTextQ
|
||||
(progn
|
||||
(mark-sexp)
|
||||
(kill-region (region-beginning) (region-end)))
|
||||
(let ((xpt (point)))
|
||||
(forward-sexp)
|
||||
(delete-char -1)
|
||||
(push-mark (point) t)
|
||||
(goto-char xpt)
|
||||
(delete-char 1))))
|
||||
|
||||
(defun xah-delete-backward-bracket-text ()
|
||||
"Delete the matching brackets to the left of cursor, including the inner text.
|
||||
e.g. (a b c)▮
|
||||
|
||||
This command assumes the left of cursor is a right bracket, and there is a matching one before it.
|
||||
|
||||
What char is considered bracket or quote is determined by current syntax table.
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html'
|
||||
Version: 2017-09-21 2023-07-30"
|
||||
(interactive)
|
||||
(progn
|
||||
(forward-sexp -1)
|
||||
(mark-sexp)
|
||||
(kill-region (region-beginning) (region-end))))
|
||||
|
||||
(defun xah-delete-backward-bracket-pair ()
|
||||
"Delete the matching brackets/quotes to the left of cursor.
|
||||
After call, mark is set at the matching bracket position, so you can `exchange-point-and-mark' to select it.
|
||||
|
||||
This command assumes the left of point is a right bracket, and there is a matching one before it.
|
||||
|
||||
What char is considered bracket or quote is determined by current syntax table.
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html'
|
||||
Version: 2017-07-02"
|
||||
(interactive)
|
||||
(let ((xp0 (point)) xp1)
|
||||
(forward-sexp -1)
|
||||
(setq xp1 (point))
|
||||
(goto-char xp0)
|
||||
(delete-char -1)
|
||||
(goto-char xp1)
|
||||
(delete-char 1)
|
||||
(push-mark (point) t)
|
||||
(goto-char (- xp0 2))))
|
||||
|
||||
(defun xah-delete-backward-char-or-bracket-text ()
|
||||
"Delete 1 character or delete quote/bracket pair and inner text.
|
||||
If the char to the left of cursor is a matching pair, delete it along with inner text, push the deleted text to `kill-ring'.
|
||||
|
||||
What char is considered bracket or quote is determined by current syntax table.
|
||||
|
||||
If `universal-argument' is called first, do not delete inner text.
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html'
|
||||
Version: 2017-07-02 2023-07-22 2023-07-30"
|
||||
(interactive)
|
||||
(if (and delete-selection-mode (region-active-p))
|
||||
(delete-region (region-beginning) (region-end))
|
||||
(cond
|
||||
((prog2 (backward-char) (looking-at "\\s)") (forward-char))
|
||||
(if current-prefix-arg
|
||||
(xah-delete-backward-bracket-pair)
|
||||
(xah-delete-backward-bracket-text))
|
||||
)
|
||||
((prog2 (backward-char) (looking-at "\\s(") (forward-char))
|
||||
(message "left of cursor is opening bracket")
|
||||
(let (xpOpenBracketLeft
|
||||
(xpOpenBracketRight (point)) xisComment)
|
||||
(backward-char)
|
||||
(setq xpOpenBracketLeft (point))
|
||||
(goto-char xpOpenBracketRight)
|
||||
(forward-char)
|
||||
(setq xisComment (nth 4 (syntax-ppss)))
|
||||
(if xisComment
|
||||
(progn
|
||||
(message "cursor is in comment")
|
||||
(goto-char xpOpenBracketLeft)
|
||||
(if (forward-comment 1)
|
||||
(kill-region (point) xpOpenBracketLeft)
|
||||
(message "error hSnRp: parsing comment failed.")))
|
||||
(progn
|
||||
(message "right 1 char of cursor is not in comment")
|
||||
(goto-char xpOpenBracketLeft)
|
||||
(forward-sexp)
|
||||
(if current-prefix-arg
|
||||
(xah-delete-backward-bracket-pair)
|
||||
(xah-delete-backward-bracket-text))))))
|
||||
((prog2 (backward-char) (looking-at "\\s\"") (forward-char))
|
||||
(if (nth 3 (syntax-ppss))
|
||||
(progn
|
||||
(backward-char)
|
||||
(xah-delete-forward-bracket-pairs (not current-prefix-arg)))
|
||||
(if current-prefix-arg
|
||||
(xah-delete-backward-bracket-pair)
|
||||
(xah-delete-backward-bracket-text))))
|
||||
(t
|
||||
(delete-char -1)))))
|
||||
|
||||
(defvar xah-brackets '("“”" "()" "[]" "{}" "<>" "<>" "()" "[]" "{}" "⦅⦆" "〚〛" "⦃⦄" "‹›" "«»" "「」" "〈〉" "《》" "【】" "〔〕" "⦗⦘" "『』" "〖〗" "〘〙" "「」" "⟦⟧" "⟨⟩" "⟪⟫" "⟮⟯" "⟬⟭" "⌈⌉" "⌊⌋" "⦇⦈" "⦉⦊" "❛❜" "❝❞" "❨❩" "❪❫" "❴❵" "❬❭" "❮❯" "❰❱" "❲❳" "〈〉" "⦑⦒" "⧼⧽" "﹙﹚" "﹛﹜" "﹝﹞" "⁽⁾" "₍₎" "⦋⦌" "⦍⦎" "⦏⦐" "⁅⁆" "⸢⸣" "⸤⸥" "⟅⟆" "⦓⦔" "⦕⦖" "⸦⸧" "⸨⸩" "⦅⦆")
|
||||
"A list of strings, each element is a string of 2 chars, the left bracket and a matching right bracket.
|
||||
Used by `xah-select-text-in-quote' and others.")
|
||||
|
||||
(defconst xah-left-brackets
|
||||
(mapcar (lambda (x) (substring x 0 1)) xah-brackets)
|
||||
"List of left bracket chars. Each element is a string.")
|
||||
|
||||
(defconst xah-right-brackets
|
||||
(mapcar (lambda (x) (substring x 1 2)) xah-brackets)
|
||||
"List of right bracket chars. Each element is a string.")
|
||||
|
||||
(defun xah-goto-matching-bracket ()
|
||||
"Move cursor to the matching bracket.
|
||||
If cursor is not on a bracket, call `backward-up-list'.
|
||||
The list of brackets to jump to is defined by `xah-left-brackets' and `xah-right-brackets'.
|
||||
|
||||
URL `http://xahlee.info/emacs/emacs/emacs_navigating_keys_for_brackets.html'
|
||||
Version: 2016-11-22 2023-07-22"
|
||||
(interactive)
|
||||
(if (nth 3 (syntax-ppss))
|
||||
(backward-up-list 1 'ESCAPE-STRINGS 'NO-SYNTAX-CROSSING)
|
||||
(cond
|
||||
((eq (char-after) ?\") (forward-sexp))
|
||||
((eq (char-before) ?\") (backward-sexp))
|
||||
((looking-at (regexp-opt xah-left-brackets))
|
||||
(forward-sexp))
|
||||
((prog2 (backward-char) (looking-at (regexp-opt xah-right-brackets)) (forward-char))
|
||||
(backward-sexp))
|
||||
(t (backward-up-list 1 'ESCAPE-STRINGS 'NO-SYNTAX-CROSSING)))))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; --------------------> Buffer <--------------------
|
||||
;;; ==================================================
|
||||
|
||||
;; Complete file names, buffer names, or any other Emacs interactions
|
||||
(helm-mode)
|
||||
|
||||
;; Change the functionality of some default functions.
|
||||
(define-key global-map [remap find-file] #'helm-find-files)
|
||||
(define-key global-map [remap execute-extended-command] #'helm-M-x)
|
||||
(define-key global-map [remap switch-to-buffer] #'helm-mini)
|
||||
|
||||
;; Shows key assignments in a mini window.
|
||||
(which-key-mode)
|
||||
|
||||
;; Garbage collector
|
||||
(setq gc-cons-threshold (* 100 1024 1024)
|
||||
read-process-output-max (* 1024 1024)
|
||||
treemacs-space-between-root-nodes nil
|
||||
company-idle-delay 0.0
|
||||
company-minimum-prefix-length 1
|
||||
lsp-idle-delay 0.1) ;; clangd is fast
|
||||
|
||||
;; lsp-mode config
|
||||
(with-eval-after-load 'lsp-mode
|
||||
(add-hook 'lsp-mode-hook #'lsp-enable-which-key-integration)
|
||||
(require 'dap-cpptools)
|
||||
(yas-global-mode))
|
||||
|
||||
;; Use short answer
|
||||
(if (version< emacs-version "28.1")
|
||||
(defalias 'yes-or-no-p 'y-or-n-p)
|
||||
(setq use-short-answers t))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; --------------------> Hooks <---------------------
|
||||
;;; ==================================================
|
||||
|
||||
(add-hook 'clojure-mode-hook 'my-add-pretty-symbol)
|
||||
(add-hook 'haskell-mode-hook 'my-add-pretty-symbol)
|
||||
(add-hook 'tex-mode-hook 'my-add-pretty-symbol)
|
||||
(add-hook 'emacs-lisp-mode-hook 'my-add-pretty-symbol)
|
||||
(add-hook 'python-mode-hook 'my-add-pretty-symbol)
|
||||
(add-hook 'c-mode-hook 'lsp)
|
||||
(add-hook 'c++-mode-hook 'lsp)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; ----------------> Key bindings <------------------
|
||||
;;; ==================================================
|
||||
|
||||
;; Hippie expand keybindings
|
||||
(global-set-key (kbd "C-t") 'hippie-expand)
|
||||
|
||||
;; Move line keybindings.
|
||||
(global-set-key (kbd "M-<up>") 'move-line-up)
|
||||
(global-set-key (kbd "M-<down>") 'move-line-down)
|
||||
|
||||
;; Copy or cut current line if no selection keybindings
|
||||
(global-set-key (kbd "<f2>") 'xah-cut-line-or-region) ; cut
|
||||
(global-set-key (kbd "<f3>") 'xah-copy-line-or-region) ; copy
|
||||
(global-set-key (kbd "<f4>") 'yank) ; paste
|
||||
|
||||
;; Select current line keybinding
|
||||
(global-set-key (kbd "M-7") 'xah-select-line)
|
||||
|
||||
;; Delete batching bracket keybindings
|
||||
(global-set-key (kbd "M-<delete>") 'xah-delete-forward-bracket-pairs)
|
||||
(global-set-key (kbd "M-S-<delete>") 'xah-delete-backward-bracket-text)
|
||||
|
||||
;; Goto matching bracket keybindings
|
||||
(global-set-key (kbd "M-<left>") 'xah-goto-matching-bracket)
|
||||
(global-set-key (kbd "M-<right>") 'xah-goto-matching-bracket)
|
||||
|
||||
;(gloab-set-key (kbd "C-c l") lsp-keymap-prefix)
|
||||
(setq lsp-keymap-prefix "C-c l")
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;;; ==================================================
|
||||
;;; ------------> Load other .el files <--------------
|
||||
;;; ==================================================
|
||||
|
||||
(load "~/.emacs.d/my-abbrev.el")
|
91
.nanorc
Executable file
91
.nanorc
Executable file
|
@ -0,0 +1,91 @@
|
|||
set linenumbers
|
||||
include "~/.nano/apacheconf.nanorc"
|
||||
include "~/.nano/arduino.nanorc"
|
||||
include "~/.nano/asciidoc.nanorc"
|
||||
include "~/.nano/asm.nanorc"
|
||||
include "~/.nano/awk.nanorc"
|
||||
include "~/.nano/c.nanorc"
|
||||
include "~/.nano/clojure.nanorc"
|
||||
include "~/.nano/cmake.nanorc"
|
||||
include "~/.nano/coffeescript.nanorc"
|
||||
include "~/.nano/colortest.nanorc"
|
||||
include "~/.nano/conf.nanorc"
|
||||
include "~/.nano/csharp.nanorc"
|
||||
include "~/.nano/css.nanorc"
|
||||
include "~/.nano/cython.nanorc"
|
||||
include "~/.nano/dot.nanorc"
|
||||
include "~/.nano/dotenv.nanorc"
|
||||
include "~/.nano/email.nanorc"
|
||||
include "~/.nano/Dockerfile.nanorc"
|
||||
include "~/.nano/etc-hosts.nanorc"
|
||||
include "~/.nano/fish.nanorc"
|
||||
include "~/.nano/fortran.nanorc"
|
||||
include "~/.nano/gentoo.nanorc"
|
||||
include "~/.nano/git.nanorc"
|
||||
include "~/.nano/gitcommit.nanorc"
|
||||
include "~/.nano/glsl.nanorc"
|
||||
include "~/.nano/go.nanorc"
|
||||
include "~/.nano/gradle.nanorc"
|
||||
include "~/.nano/groff.nanorc"
|
||||
include "~/.nano/haml.nanorc"
|
||||
include "~/.nano/haskell.nanorc"
|
||||
include "~/.nano/html.nanorc"
|
||||
include "~/.nano/html.j2.nanorc"
|
||||
include "~/.nano/ical.nanorc"
|
||||
include "~/.nano/ini.nanorc"
|
||||
include "~/.nano/inputrc.nanorc"
|
||||
include "~/.nano/jade.nanorc"
|
||||
include "~/.nano/java.nanorc"
|
||||
include "~/.nano/javascript.nanorc"
|
||||
include "~/.nano/js.nanorc"
|
||||
include "~/.nano/json.nanorc"
|
||||
include "~/.nano/keymap.nanorc"
|
||||
include "~/.nano/kickstart.nanorc"
|
||||
include "~/.nano/kotlin.nanorc"
|
||||
include "~/.nano/ledger.nanorc"
|
||||
include "~/.nano/lisp.nanorc"
|
||||
include "~/.nano/lua.nanorc"
|
||||
include "~/.nano/makefile.nanorc"
|
||||
include "~/.nano/man.nanorc"
|
||||
include "~/.nano/markdown.nanorc"
|
||||
include "~/.nano/mpdconf.nanorc"
|
||||
include "~/.nano/mutt.nanorc"
|
||||
include "~/.nano/nanorc.nanorc"
|
||||
include "~/.nano/nginx.nanorc"
|
||||
include "~/.nano/nmap.nanorc"
|
||||
include "~/.nano/ocaml.nanorc"
|
||||
include "~/.nano/patch.nanorc"
|
||||
include "~/.nano/peg.nanorc"
|
||||
include "~/.nano/perl.nanorc"
|
||||
include "~/.nano/perl6.nanorc"
|
||||
include "~/.nano/php.nanorc"
|
||||
include "~/.nano/pkg-config.nanorc"
|
||||
include "~/.nano/pkgbuild.nanorc"
|
||||
include "~/.nano/po.nanorc"
|
||||
include "~/.nano/pov.nanorc"
|
||||
include "~/.nano/privoxy.nanorc"
|
||||
include "~/.nano/puppet.nanorc"
|
||||
include "~/.nano/pug.nanorc"
|
||||
include "~/.nano/python.nanorc"
|
||||
include "~/.nano/reST.nanorc"
|
||||
include "~/.nano/rpmspec.nanorc"
|
||||
include "~/.nano/ruby.nanorc"
|
||||
include "~/.nano/rust.nanorc"
|
||||
include "~/.nano/scala.nanorc"
|
||||
include "~/.nano/sed.nanorc"
|
||||
include "~/.nano/sh.nanorc"
|
||||
include "~/.nano/sls.nanorc"
|
||||
include "~/.nano/sql.nanorc"
|
||||
include "~/.nano/svn.nanorc"
|
||||
include "~/.nano/swift.nanorc"
|
||||
include "~/.nano/systemd.nanorc"
|
||||
include "~/.nano/tcl.nanorc"
|
||||
include "~/.nano/tex.nanorc"
|
||||
include "~/.nano/vala.nanorc"
|
||||
include "~/.nano/verilog.nanorc"
|
||||
include "~/.nano/vi.nanorc"
|
||||
include "~/.nano/xml.nanorc"
|
||||
include "~/.nano/xresources.nanorc"
|
||||
include "~/.nano/yaml.nanorc"
|
||||
include "~/.nano/yum.nanorc"
|
||||
include "~/.nano/zsh.nanorc"
|
Loading…
Add table
Reference in a new issue