[Org files] Formatted org files to look better with new org config
This commit is contained in:
parent
e3880c48b1
commit
3a1015b9e7
File diff suppressed because it is too large
Load Diff
1392
org/config/bin.org
1392
org/config/bin.org
File diff suppressed because it is too large
Load Diff
@ -1794,7 +1794,6 @@ One of the amazing features of org-mode is its literary programming capacities b
|
||||
| sass |
|
||||
| scheme |
|
||||
| shell |
|
||||
| swift |
|
||||
|
||||
#+NAME: org-babel-languages-gen
|
||||
#+BEGIN_SRC emacs-lisp :exports none :tangle no :var languages=org-babel-languages-table[,0] :cache yes :results replace
|
||||
@ -1803,7 +1802,7 @@ One of the amazing features of org-mode is its literary programming capacities b
|
||||
"\n")
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS[d8ef67cfac36191c43e0f20b9c0a024cb1e9413e]: org-babel-languages-gen
|
||||
#+RESULTS[cf8b81f0da6306f8131e34be6d3742248fdb057b]: org-babel-languages-gen
|
||||
#+begin_example
|
||||
(C . t)
|
||||
(dot . t)
|
||||
@ -1815,7 +1814,6 @@ One of the amazing features of org-mode is its literary programming capacities b
|
||||
(sass . t)
|
||||
(scheme . t)
|
||||
(shell . t)
|
||||
(swift . t)
|
||||
#+end_example
|
||||
|
||||
The corresponding code is as follows:
|
||||
@ -2604,7 +2602,6 @@ I also want to always be in ~visual-line-mode~ so Emacs soft-wraps lines that ar
|
||||
I also want for some non-programming modes to enable a hard-limit in terms of how many characters can fit on one line. The modes that benefit are ~message-mode~, ~org-mode~, ~text-mode~ and ~markdown-mode~.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(mapc (lambda (x)
|
||||
(add-hook x 'auto-fill-mode)
|
||||
(add-hook x 'visual-line-mode))
|
||||
'(message-mode-hook
|
||||
text-mode-hook
|
||||
@ -3005,16 +3002,15 @@ I want to see by default how much battery my computer has, so let’s enable it:
|
||||
:END:
|
||||
As I will always say, orgmode is an amazing piece of software that deserves particular care and love. That is why I want to give it a unique look and feel compared to the rest of my Emacs configuration, in order to make it feel much more comfortable.
|
||||
|
||||
In order to make org-mode even sexier, let’s enable ~variable-pitch-mode~ for org-mode so we can get some proportional font:
|
||||
In order to make org-mode even sexier, let’s enable ~variable-pitch-mode~ for org-mode so we can get some proportional font. I’ll also remove ~auto-fill-mode~ which seems to stick to Orgmode like hell and I don’t know why.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(add-hook 'org-mode-hook 'variable-pitch-mode)
|
||||
(add-hook 'org-mode-hook 'visual-line-mode)
|
||||
(message "coucou")
|
||||
(remove-hook 'org-mode-hook 'auto-fill-mode)
|
||||
#+END_SRC
|
||||
|
||||
Fonts will play an important part in this, but so will colors and font size. The following code is largely based on the one found [[https://zzamboni.org/post/beautifying-org-mode-in-emacs/][on this blog post]].
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(message "Setting up some beautiful org-mode")
|
||||
(let* ((font `(:font "Charis SIL"))
|
||||
(head `(:inherit default :weight bold))
|
||||
(fixed `(:inherit fixed-pitch :height 0.8)))
|
||||
@ -3044,7 +3040,6 @@ Fonts will play an important part in this, but so will colors and font size. The
|
||||
`(org-link ((t (:foreground ,phundrak/nord8 :underline t))))
|
||||
'(org-meta-line ((t (:inherit (font-lock-comment-face fixed-pitch) :height 0.8))))
|
||||
'(org-special-keyword ((t (:inherit (font-lock-comment-face fixed-pitch)))))))
|
||||
(message "Org-mode is now beautiful")
|
||||
#+END_SRC
|
||||
|
||||
Finally, let’s limit the width of images inlined in org buffers to 400px:
|
||||
|
@ -11,40 +11,32 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Presentation-340195eb
|
||||
:END:
|
||||
The file present in =~/.config/fish/config.fish= is the configuration file for
|
||||
the [[https://fishshell.com/][fish shell]]. It contains custom functions, environment variables and
|
||||
abbreviations.
|
||||
The file present in =~/.config/fish/config.fish= is the configuration file for the [[https://fishshell.com/][fish shell]]. It contains custom functions, environment variables and abbreviations.
|
||||
|
||||
Just in case, we might need sometimes to declare the fish function
|
||||
=fish_title= as =true=, so let’s do so.
|
||||
#+BEGIN_SRC fish
|
||||
Just in case, we might need sometimes to declare the fish function =fish_title= as =true=, so let’s do so.
|
||||
#+BEGIN_SRC fish
|
||||
function fish_title
|
||||
true
|
||||
end
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Fish from within Emacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Fish_from_within_Emacs-360c0a74
|
||||
:END:
|
||||
I sometimes call fish from within emacs, with =M-x ansi-term=. In this case,
|
||||
the variable =TERM= needs to have the value =eterm-color=.
|
||||
#+BEGIN_SRC fish
|
||||
I sometimes call fish from within emacs, with =M-x ansi-term=. In this case, the variable =TERM= needs to have the value =eterm-color=.
|
||||
#+BEGIN_SRC fish
|
||||
if test -n "$EMACS"
|
||||
set -x TERM eterm-color
|
||||
end
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Tramp remote access
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Tramp_remote_access-72aedec2
|
||||
:END:
|
||||
When accessing from a remote machine our computer from Emacs, tramp needs a
|
||||
precise shell appearance: a simple =$= followed by a space after which to put
|
||||
the commands it needs to execute, and nothing else. Due to this, let’s
|
||||
deactivate and redefine some of the functions defining the appearance of
|
||||
fish.
|
||||
#+BEGIN_SRC fish
|
||||
When accessing from a remote machine our computer from Emacs, tramp needs a precise shell appearance: a simple =$= followed by a space after which to put the commands it needs to execute, and nothing else. Due to this, let’s deactivate and redefine some of the functions defining the appearance of fish.
|
||||
#+BEGIN_SRC fish
|
||||
if test "$TERM" = "dumb"
|
||||
function fish_prompt
|
||||
echo "\$ "
|
||||
@ -53,17 +45,14 @@
|
||||
function fish_greeting; end
|
||||
function fish_title; end
|
||||
end
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Regular fish shell appearance
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Regular_fish_shell_appearance-c3e532e1
|
||||
:END:
|
||||
Now, there is only one function I modify when it comes to the appearance of
|
||||
fish when I’m the one using it: the ~fish_greeting~ function. I use it to give
|
||||
me an overview of my computer’s status, including its hostname, uptime, disks
|
||||
usage, ram usage, swap usage, and networking.
|
||||
#+BEGIN_SRC fish
|
||||
Now, there is only one function I modify when it comes to the appearance of fish when I’m the one using it: the ~fish_greeting~ function. I use it to give me an overview of my computer’s status, including its hostname, uptime, disks usage, ram usage, swap usage, and networking.
|
||||
#+BEGIN_SRC fish
|
||||
set RED '\033[0;31m'
|
||||
set GREEN '\033[0;32m'
|
||||
set NC '\033[0m'
|
||||
@ -129,536 +118,450 @@
|
||||
printf "Swap....: %s %5dM / %5dM (%2d%%)\n" (display_slider $swap_used $swap_total) $swap_used $swap_total $swap_p
|
||||
echo $ruler
|
||||
end
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Global variables
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Global_variables-1c84df8b
|
||||
:END:
|
||||
|
||||
In order to keep some other code clean, I set the ~$BROWSER~ variable so I
|
||||
don’t have to call my web browser directly but rather with this variable.
|
||||
#+BEGIN_SRC fish
|
||||
In order to keep some other code clean, I set the ~$BROWSER~ variable so I don’t have to call my web browser directly but rather with this variable.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx BROWSER firefox
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Sometimes, software will rely on =SUDO_ASKPASS= to get a GUI from which it
|
||||
can get the sudo password. So, let’s declare it.
|
||||
#+BEGIN_SRC fish
|
||||
Sometimes, software will rely on =SUDO_ASKPASS= to get a GUI from which it can get the sudo password. So, let’s declare it.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx SUDO_ASKPASS ~/.local/bin/askpass
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Development
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Global_variables-Development-76b3ff13
|
||||
:END:
|
||||
Now, let’s declare our editor of choice, EmacsClient; not Emacs itself since
|
||||
it will most often be just quick edits, nothing too heavy, if it is called
|
||||
from the ~EDITOR~ variable (from Git, for example), or from the ~VISUAL~
|
||||
variable.
|
||||
#+BEGIN_SRC fish
|
||||
Now, let’s declare our editor of choice, EmacsClient; not Emacs itself since it will most often be just quick edits, nothing too heavy, if it is called from the ~EDITOR~ variable (from Git, for example), or from the ~VISUAL~ variable.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx EDITOR emacsclient -c
|
||||
set -gx VISUAL emacsclient -c
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
We also need to set the path to the Dart SDK.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx DART_SDK /opt/dart-sdk/bin
|
||||
#+END_SRC
|
||||
We also need to set the path to the Dart SDK.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx DART_SDK /opt/dart-sdk/bin
|
||||
#+END_SRC
|
||||
|
||||
And we also need to specify where the Android SDK it located.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx ANDROID_HOME $HOME/Android/Sdk
|
||||
#+END_SRC
|
||||
And we also need to specify where the Android SDK it located.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx ANDROID_HOME $HOME/Android/Sdk
|
||||
#+END_SRC
|
||||
|
||||
Still related to Dart and Flutter development,
|
||||
#+BEGIN_SRC fish
|
||||
Still related to Dart and Flutter development,
|
||||
#+BEGIN_SRC fish
|
||||
set -gx CHROME_EXECUTABLE /usr/bin/chromium
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Next, we have two variables from Deno, the Node.js destroyer. Its base
|
||||
directory will be set in my XDG config directory, and its binaries will be
|
||||
located in my local binaries directory (see below).
|
||||
#+BEGIN_SRC fish
|
||||
Next, we have two variables from Deno, the Node.js destroyer. Its base directory will be set in my XDG config directory, and its binaries will be located in my local binaries directory (see below).
|
||||
#+BEGIN_SRC fish
|
||||
set -gx DENO_DIR $HOME/.config/deno
|
||||
set -gx DENO_INSTALL_ROOT $HOME/.local/bin/deno
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Finally, some development packages require the =PKG_CONFIG_PATH= to be set,
|
||||
so let’s do so.
|
||||
#+BEGIN_SRC fish
|
||||
Finally, some development packages require the =PKG_CONFIG_PATH= to be set, so let’s do so.
|
||||
#+BEGIN_SRC fish
|
||||
set -gx PKG_CONFIG_PATH /usr/local/lib/pkgconfig/ $PKG_CONFIG_PATH
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** $PATH
|
||||
** ~$PATH~
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Global_variables-$PATH-e1320303
|
||||
:END:
|
||||
Some global variables might sometimes be needed and need to be modified. This
|
||||
is for example the case with my ~PATH~ variable in which I add Rust’s Cargo’s
|
||||
binaries, Go’s binaries and my own executables. And of course, don’t forget
|
||||
to add the already existing ~PATH~.
|
||||
Some global variables might sometimes be needed and need to be modified. This is for example the case with my ~PATH~ variable in which I add Rust’s Cargo’s binaries, Go’s binaries and my own executables. And of course, don’t forget to add the already existing ~PATH~.
|
||||
|
||||
#+NAME: extra-paths
|
||||
| additional path | what it leads to |
|
||||
|---------------------------+--------------------------------------|
|
||||
| $HOME/.pub-cache/bin | Dart binaries and executables |
|
||||
| $HOME/.local/bin | Custom executables, see [[file:bin.org]] |
|
||||
| $HOME/go/bin | Go binaries and executables |
|
||||
| $HOME/.cargo/bin | Rust binaries and executables |
|
||||
| $HOME/.gem/ruby/2.6.0/bin | Ruby binaries and executables |
|
||||
| $HOME/.cabal/bin | Haskel binaries |
|
||||
#+NAME: extra-paths
|
||||
| additional path | what it leads to |
|
||||
|---------------------------+--------------------------------------|
|
||||
| $HOME/.pub-cache/bin | Dart binaries and executables |
|
||||
| $HOME/.local/bin | Custom executables, see [[file:bin.org]] |
|
||||
| $HOME/go/bin | Go binaries and executables |
|
||||
| $HOME/.cargo/bin | Rust binaries and executables |
|
||||
| $HOME/.gem/ruby/2.6.0/bin | Ruby binaries and executables |
|
||||
| $HOME/.cabal/bin | Haskel binaries |
|
||||
|
||||
#+NAME: generate-extra-paths
|
||||
#+BEGIN_SRC emacs-lisp :var paths=extra-paths[,0] :exports none :cache yes
|
||||
#+NAME: generate-extra-paths
|
||||
#+BEGIN_SRC emacs-lisp :var paths=extra-paths[,0] :exports none :cache yes
|
||||
(mapconcat (lambda (x) x)
|
||||
paths " ")
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS[f1fff053cb9e2239f35571249763683a4a62e643]: generate-extra-paths
|
||||
: $HOME/.pub-cache/bin $HOME/.local/bin $HOME/go/bin $HOME/.cargo/bin $HOME/.gem/ruby/2.6.0/bin $HOME/.cabal/bin
|
||||
#+RESULTS[f1fff053cb9e2239f35571249763683a4a62e643]: generate-extra-paths
|
||||
: $HOME/.pub-cache/bin $HOME/.local/bin $HOME/go/bin $HOME/.cargo/bin $HOME/.gem/ruby/2.6.0/bin $HOME/.cabal/bin
|
||||
|
||||
The code below ensures the ~PATH~ is updated only at login, and every
|
||||
location is addded only once.
|
||||
#+BEGIN_SRC fish :noweb yes
|
||||
The code below ensures the ~PATH~ is updated only at login, and every location is addded only once.
|
||||
#+BEGIN_SRC fish :noweb yes
|
||||
for p in <<generate-extra-paths()>>
|
||||
if status is-login
|
||||
contains $p $PATH || set PATH $p $PATH
|
||||
end
|
||||
end
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Abbreviations
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-97537716
|
||||
:END:
|
||||
#+NAME: generate-abbr
|
||||
#+BEGIN_SRC emacs-lisp :var table=[] :exports none :tangle no
|
||||
#+NAME: generate-abbr
|
||||
#+BEGIN_SRC emacs-lisp :var table=[] :exports none :tangle no
|
||||
(replace-regexp-in-string "\\\\vert[{}]*"
|
||||
"|"
|
||||
(mapconcat (lambda (x) (format "abbr %s '%s'" (car x) (cadr x)))
|
||||
table
|
||||
"\n")
|
||||
t t)
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** System monitoring
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-System_monitoring-bd909755
|
||||
:END:
|
||||
Here I have some abbreviations which are quite useful when performing some
|
||||
system monitoring. With =df=, we can get an overview of our filesystem usage,
|
||||
while with =diskspace= we get some more precise information. =meminfo= is a
|
||||
call to =free= with sane defaults, and similar to =meminfo=, we also have
|
||||
=gpumeminfo= so we can get a quick look at the memory-related logs of our X
|
||||
session. I also declared =cpuinfo= an alias of =lscpu= in order to keep
|
||||
consistent with =meminfo=. =pscpu= gives us information on what the CPU is
|
||||
running right now, and =pscpu10= limits that to the top 10 threads.
|
||||
Similarly, =psmem= gives us information on the memory usage of the current
|
||||
threads, and =psmem10= only the ten most important threads in terms of memory
|
||||
usage.
|
||||
#+NAME: mgmt-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+---------------------------------------------------|
|
||||
| df | df -H |
|
||||
| diskspace | sudo df -h \vert grep -E "sd\vert{}lv\vert{}Size" |
|
||||
| du | du -ch |
|
||||
| meminfo | free -m -l -t |
|
||||
| gpumeminfo | grep -i --color memory /var/log/Xorg.0.log |
|
||||
| cpuinfo | lscpu |
|
||||
| pscpu | ps auxf \vert sort -nr -k 3 |
|
||||
| pscpu10 | ps auxf \vert sort -nr -k 3 \vert head -10 |
|
||||
| psmem | ps auxf \vert sort -nr -k 4 |
|
||||
| psmem10 | ps auxf \vert sort -nr -k 4 \vert head -10 |
|
||||
Here I have some abbreviations which are quite useful when performing some system monitoring. With =df=, we can get an overview of our filesystem usage, while with =diskspace= we get some more precise information. =meminfo= is a call to =free= with sane defaults, and similar to =meminfo=, we also have =gpumeminfo= so we can get a quick look at the memory-related logs of our X session. I also declared =cpuinfo= an alias of =lscpu= in order to keep consistent with =meminfo=. =pscpu= gives us information on what the CPU is running right now, and =pscpu10= limits that to the top 10 threads. Similarly, =psmem= gives us information on the memory usage of the current threads, and =psmem10= only the ten most important threads in terms of memory usage.
|
||||
#+NAME: mgmt-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+---------------------------------------------------|
|
||||
| df | df -H |
|
||||
| diskspace | sudo df -h \vert grep -E "sd\vert{}lv\vert{}Size" |
|
||||
| du | du -ch |
|
||||
| meminfo | free -m -l -t |
|
||||
| gpumeminfo | grep -i --color memory /var/log/Xorg.0.log |
|
||||
| cpuinfo | lscpu |
|
||||
| pscpu | ps auxf \vert sort -nr -k 3 |
|
||||
| pscpu10 | ps auxf \vert sort -nr -k 3 \vert head -10 |
|
||||
| psmem | ps auxf \vert sort -nr -k 4 |
|
||||
| psmem10 | ps auxf \vert sort -nr -k 4 \vert head -10 |
|
||||
|
||||
#+begin_SRC fish
|
||||
#+begin_SRC fish
|
||||
<<generate-abbr(table=mgmt-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** System management (packages and services)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-System_management_(packages_and_services)-7249fbb7
|
||||
:END:
|
||||
I added some of these abbreviations due to how often I have to write the
|
||||
whole thing.
|
||||
I added some of these abbreviations due to how often I have to write the whole thing.
|
||||
|
||||
*** Package management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-System_management_(packages_and_services)-Package_management-efbcdf0f
|
||||
:END:
|
||||
The first command is =remove= which removes a package from my system, as
|
||||
well as its dependencies no longer needed. =p=. =pacman='s or =yay='s. This
|
||||
is why I simply type =purge=. And if I want to simply seach among the
|
||||
=pacman= repos, I can type =search=. Otherwise, if I want to include AUR
|
||||
results, I’ll use =yay=.
|
||||
The first command is =remove= which removes a package from my system, as well as its dependencies no longer needed. =p=. =pacman='s or =yay='s. This is why I simply type =purge=. And if I want to simply seach among the =pacman= repos, I can type =search=. Otherwise, if I want to include AUR results, I’ll use =yay=.
|
||||
|
||||
#+NAME: pm-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------|
|
||||
| remove | sudo pacman -Rscnd |
|
||||
| p | sudo pacman |
|
||||
| purge | yay -Sc |
|
||||
| search | yay -Ss |
|
||||
#+NAME: pm-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------|
|
||||
| remove | sudo pacman -Rscnd |
|
||||
| p | sudo pacman |
|
||||
| purge | yay -Sc |
|
||||
| search | yay -Ss |
|
||||
|
||||
#+BEGIN_SRC fish
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=pm-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Service management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-System_management_(packages_and_services)-Service_management-8c5ae482
|
||||
:END:
|
||||
I don’t have the muscle memory of =systemctl=. So instead, I simply type
|
||||
=c= when I want to do something user service related.
|
||||
And if I want to manipulate system services, I can instead type a simple
|
||||
capital =S=.
|
||||
#+NAME: service-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+-----------|
|
||||
| s | systemctl |
|
||||
I don’t have the muscle memory of =systemctl=. So instead, I simply type =c= when I want to do something user service related. And if I want to manipulate system services, I can instead type a simple capital =S=.
|
||||
#+NAME: service-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+-----------|
|
||||
| s | systemctl |
|
||||
|
||||
#+BEGIN_SRC fish
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=service-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Development
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Development-d6050ca4
|
||||
:END:
|
||||
A good amount of these commands are development related, especially when it
|
||||
comes to compilation or Docker.
|
||||
A good amount of these commands are development related, especially when it comes to compilation or Docker.
|
||||
|
||||
*** CMake
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Development-CMake-f2951675
|
||||
:END:
|
||||
I have the following abbreviations so I can quickly run CMake and create a
|
||||
configuration for debug or release profiles.
|
||||
#+NAME: abbr-cmake
|
||||
| abbreviation | command |
|
||||
|--------------+----------------------------------|
|
||||
| cdebug | cmake -DCMAKE_BUILD_TYPE=Debug |
|
||||
| crelease | cmake -DCMAKE_BUILD_TYPE=Release |
|
||||
I have the following abbreviations so I can quickly run CMake and create a configuration for debug or release profiles.
|
||||
#+NAME: abbr-cmake
|
||||
| abbreviation | command |
|
||||
|--------------+----------------------------------|
|
||||
| cdebug | cmake -DCMAKE_BUILD_TYPE=Debug |
|
||||
| crelease | cmake -DCMAKE_BUILD_TYPE=Release |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=abbr-cmake)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Docker
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Development-Docker-2d0a1288
|
||||
:END:
|
||||
And of course, when it comes to Docker Compose, I don't have time to write
|
||||
the full command, so I use these instead.
|
||||
#+NAME: abbr-docker
|
||||
| abbreviation | command |
|
||||
|--------------+------------------------------|
|
||||
| dc | docker-compose |
|
||||
| dcb | docker-compose build |
|
||||
| dcd | docker-compose down |
|
||||
| dcl | docker-compose logs |
|
||||
| dcp | docker-compose pull |
|
||||
| dcr | docker-compose run --rm |
|
||||
| dcu | docker-compose up |
|
||||
| dcub | docker-compose up --build |
|
||||
| dcud | docker-compose up -d |
|
||||
| dcudb | docker-compose up -d --build |
|
||||
And of course, when it comes to Docker Compose, I don't have time to write the full command, so I use these instead.
|
||||
#+NAME: abbr-docker
|
||||
| abbreviation | command |
|
||||
|--------------+------------------------------|
|
||||
| dc | docker-compose |
|
||||
| dcb | docker-compose build |
|
||||
| dcd | docker-compose down |
|
||||
| dcl | docker-compose logs |
|
||||
| dcp | docker-compose pull |
|
||||
| dcr | docker-compose run --rm |
|
||||
| dcu | docker-compose up |
|
||||
| dcub | docker-compose up --build |
|
||||
| dcud | docker-compose up -d |
|
||||
| dcudb | docker-compose up -d --build |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=abbr-docker)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Text editors
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Development-Text_editors-5a23df47
|
||||
:END:
|
||||
I greatly prefer to use Emacsclient as my main text editor; Emacs has
|
||||
basically all I need. So, it's only normal I have an abbreviation to launch
|
||||
a new instance of it. However, in a graphical environment, this will launch
|
||||
a new graphical window of Emacs. To launch a terminal instance, I'll use
|
||||
~enw~ (~nw~ stands for the option “nowindow” ~-nw~ of Emacs). I also wish to
|
||||
completely stop using other text editors, such as ~vi~, ~vim~, ~nano~ and
|
||||
~ed~, so let's all add their command as an abbreviation for Emacs.
|
||||
I greatly prefer to use Emacsclient as my main text editor; Emacs has basically all I need. So, it's only normal I have an abbreviation to launch a new instance of it. However, in a graphical environment, this will launch a new graphical window of Emacs. To launch a terminal instance, I'll use ~enw~ (~nw~ stands for the option “nowindow” ~-nw~ of Emacs). I also wish to completely stop using other text editors, such as ~vi~, ~vim~, ~nano~ and ~ed~, so let's all add their command as an abbreviation for Emacs.
|
||||
|
||||
#+NAME: abbr-text-ed
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------|
|
||||
| e | emacsclient -c |
|
||||
| enw | emacsclient -c -nw |
|
||||
| vi | emacsclient -c |
|
||||
| vim | emacsclient -c |
|
||||
| nano | emacsclient -c |
|
||||
| ed | emacsclient -c |
|
||||
#+NAME: abbr-text-ed
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------|
|
||||
| e | emacsclient -c |
|
||||
| enw | emacsclient -c -nw |
|
||||
| vi | emacsclient -c |
|
||||
| vim | emacsclient -c |
|
||||
| nano | emacsclient -c |
|
||||
| ed | emacsclient -c |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish :noweb yes
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish :noweb yes
|
||||
<<generate-abbr(table=abbr-text-ed)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Compilation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Development-Compilation-dd066050
|
||||
:END:
|
||||
By default, I set ~clang~, ~clang++~, ~gcc~ and ~g++~ to the latest
|
||||
standard and with the ~-Wall~ flag activated.
|
||||
#+NAME: abbr-comp
|
||||
| abbreviation | command |
|
||||
|--------------+----------------------|
|
||||
| clang | clang -Wall |
|
||||
| clang++ | clang++ -Wall |
|
||||
| g++ | g++ -Wall -std=c++20 |
|
||||
| gcc | gcc -Wall -std=c18 |
|
||||
By default, I set ~clang~, ~clang++~, ~gcc~ and ~g++~ to the latest standard and with the ~-Wall~ flag activated.
|
||||
#+NAME: abbr-comp
|
||||
| abbreviation | command |
|
||||
|--------------+----------------------|
|
||||
| clang | clang -Wall |
|
||||
| clang++ | clang++ -Wall |
|
||||
| g++ | g++ -Wall -std=c++20 |
|
||||
| gcc | gcc -Wall -std=c18 |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=abbr-comp)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Git
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Development-Git-5e5055c1
|
||||
:END:
|
||||
And let's face it: we all at one point just wanted to commit our code
|
||||
without thinking about the message, to just get over with it. Don't worry,
|
||||
I got you covered.
|
||||
#+NAME: abbr-git
|
||||
| abbreviation | command |
|
||||
|--------------+-----------------------------------------------------|
|
||||
| randcommit | git commit -m (curl -s whatthecommit.com/index.txt) |
|
||||
And let's face it: we all at one point just wanted to commit our code without thinking about the message, to just get over with it. Don't worry, I got you covered.
|
||||
#+NAME: abbr-git
|
||||
| abbreviation | command |
|
||||
|--------------+-----------------------------------------------------|
|
||||
| randcommit | git commit -m (curl -s whatthecommit.com/index.txt) |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=abbr-git)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** LaTeX
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-LaTeX-76865eb9
|
||||
:END:
|
||||
Yes, although I use org-mode, I still have some use for LaTeX, especially
|
||||
when it comes to PDF exports of my org files. Hence why I use the LaTeX
|
||||
package manager. It is recommended to use ~tllocalmgr~ instead of ~tlmgr~,
|
||||
but I can never remember the command, and the latter is faster to type, so
|
||||
time for an abbreviation. Same goes for ~texhash~ which must be run as sudo.
|
||||
#+NAME: latex-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------|
|
||||
| tlmgr | tllocalmgr |
|
||||
| texhash | sudo texhash |
|
||||
Yes, although I use org-mode, I still have some use for LaTeX, especially when it comes to PDF exports of my org files. Hence why I use the LaTeX package manager. It is recommended to use ~tllocalmgr~ instead of ~tlmgr~, but I can never remember the command, and the latter is faster to type, so time for an abbreviation. Same goes for ~texhash~ which must be run as sudo.
|
||||
#+NAME: latex-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------|
|
||||
| tlmgr | tllocalmgr |
|
||||
| texhash | sudo texhash |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=latex-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Some security measures
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Some_security_measures-489cb521
|
||||
:END:
|
||||
Some commands can be quite dangerous when not used properly, which is why I
|
||||
added default flags and options so I can get warnings before things get ugly.
|
||||
The =-i= and =-I= add prompts in case we might not want to do what we asked
|
||||
the shell to do. Notice =lns= which creates symlinks, =rmd= which removes
|
||||
directories, =rmf= which forces deletion, and =rmdf= which forces the
|
||||
delition of a directory. Notice also the =--preserve-root= which will prevent
|
||||
me from accidentally removing the root folder. I added the same option to
|
||||
=chgrp=, =chmod=, and =chown=.
|
||||
#+NAME: sec-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------------|
|
||||
| cp | cp -i |
|
||||
| ln | ln -i |
|
||||
| lns | ln -si |
|
||||
| mv | mv -i |
|
||||
| rm | rm -Iv |
|
||||
| rmd | rm --preserve-root -Irv |
|
||||
| rmdf | rm --preserve-root -Irfv |
|
||||
| rmf | rm --preserve-root -Ifv |
|
||||
| chgrp | chgrp --preserve-root -v |
|
||||
| chmod | chmod --preserve-root -v |
|
||||
| chown | chown --preserve-root -v |
|
||||
Some commands can be quite dangerous when not used properly, which is why I added default flags and options so I can get warnings before things get ugly. The =-i= and =-I= add prompts in case we might not want to do what we asked the shell to do. Notice =lns= which creates symlinks, =rmd= which removes directories, =rmf= which forces deletion, and =rmdf= which forces the delition of a directory. Notice also the =--preserve-root= which will prevent me from accidentally removing the root folder. I added the same option to =chgrp=, =chmod=, and =chown=.
|
||||
#+NAME: sec-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------------|
|
||||
| cp | cp -i |
|
||||
| ln | ln -i |
|
||||
| lns | ln -si |
|
||||
| mv | mv -i |
|
||||
| rm | rm -Iv |
|
||||
| rmd | rm --preserve-root -Irv |
|
||||
| rmdf | rm --preserve-root -Irfv |
|
||||
| rmf | rm --preserve-root -Ifv |
|
||||
| chgrp | chgrp --preserve-root -v |
|
||||
| chmod | chmod --preserve-root -v |
|
||||
| chown | chown --preserve-root -v |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=sec-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Typos
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Typos-370bbb27
|
||||
:END:
|
||||
Let's admit it, we all make typos from time to time in the shell, and some
|
||||
are recurrent enough we make abbreviations or aliases of the correct command.
|
||||
Well, I have some of my abbreviations which were make exactly because of
|
||||
this. Sometimes for some reasons, my brain makes me write ~clean~ instead of
|
||||
~clear~. So, let's just replace the former by the latter. I'm also very bad
|
||||
at typing ~exit~. And sometimes I suck at typing ~htop~. ~q~ isn't a typo per
|
||||
se, instead just a habit I have.
|
||||
#+NAME: typo-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+---------|
|
||||
| clean | clear |
|
||||
| exi | exit |
|
||||
| exti | exit |
|
||||
| q | exit |
|
||||
| hotp | htop |
|
||||
Let's admit it, we all make typos from time to time in the shell, and some are recurrent enough we make abbreviations or aliases of the correct command. Well, I have some of my abbreviations which were make exactly because of this. Sometimes for some reasons, my brain makes me write ~clean~ instead of ~clear~. So, let's just replace the former by the latter. I'm also very bad at typing ~exit~. And sometimes I suck at typing ~htop~. ~q~ isn't a typo per se, instead just a habit I have.
|
||||
#+NAME: typo-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+---------|
|
||||
| clean | clear |
|
||||
| exi | exit |
|
||||
| exti | exit |
|
||||
| q | exit |
|
||||
| hotp | htop |
|
||||
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
Here is the corresponding fish configuration:
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=typo-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Misc
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-c2631eb6
|
||||
:END:
|
||||
Finally, some miscellaneous abbreviations that don't really fit into any of
|
||||
the above categories.
|
||||
Finally, some miscellaneous abbreviations that don't really fit into any of the above categories.
|
||||
|
||||
*** Media
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-Media-e4b85d56
|
||||
:END:
|
||||
Here you will find various commands related to media in general. the first
|
||||
one is a command to play some chillhop from the [[https://www.youtube.com/user/Chillhopdotcom][Chillhop YouTube channel]]'s
|
||||
livestream.
|
||||
#+BEGIN_SRC fish
|
||||
Here you will find various commands related to media in general. the first one is a command to play some chillhop from the [[https://www.youtube.com/user/Chillhopdotcom][Chillhop YouTube channel]]'s livestream.
|
||||
#+BEGIN_SRC fish
|
||||
abbr chill 'mpv --force-window=no --no-video "https://www.youtube.com/user/Chillhopdotcom/live" &'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
When it comes to mpv, I do not want to force it to open a graphical window
|
||||
if for example I want to listen to an audio file. I also do not want any
|
||||
border on that window. So, I declared this abbreviation.
|
||||
#+BEGIN_SRC fish
|
||||
When it comes to mpv, I do not want to force it to open a graphical window if for example I want to listen to an audio file. I also do not want any border on that window. So, I declared this abbreviation.
|
||||
#+BEGIN_SRC fish
|
||||
abbr mpv 'mpv --no-border --force-window=no'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
When I want to download a song from YouTube, I'll just use the command ~flac
|
||||
videoIdentifier~ to get it through ~youtube-dl~.
|
||||
#+BEGIN_SRC fish
|
||||
When I want to download a song from YouTube, I'll just use the command ~flac videoIdentifier~ to get it through ~youtube-dl~.
|
||||
#+BEGIN_SRC fish
|
||||
abbr flac 'youtube-dl -x --audio-format flac --audio-quality 0 -o "~/Music/%(uploader)s/%(title)s.%(ext)s"'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
I download a LOT of videos from YouTube, generally educative videos that I
|
||||
do not want to lose to YouTube one day who will decide that such channel is
|
||||
unworthy of their platform, or if the original author decides to delete
|
||||
their videos or whatever. So, I use the abbreviation ~ytdl~ to download
|
||||
either one video, or a whole YouTube channel.
|
||||
#+BEGIN_SRC fish
|
||||
I download a LOT of videos from YouTube, generally educative videos that I do not want to lose to YouTube one day who will decide that such channel is unworthy of their platform, or if the original author decides to delete their videos or whatever. So, I use the abbreviation ~ytdl~ to download either one video, or a whole YouTube channel.
|
||||
#+BEGIN_SRC fish
|
||||
abbr ytdl 'youtube-dl -f best -ciw -o "~/Videos/YouTube/%(uploader)s/%(upload_date)s - %(title)s.%(ext)s"'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Some sane default options for ~sxiv~, a simple X image Viewer. This includes
|
||||
playing GIFs and not displaying the filename below. Sxiv will also open in
|
||||
fullscreen and will fit the displayed image to the frame. I also abbreviated
|
||||
~feh~ to sxiv, old habits die hard.
|
||||
#+BEGIN_SRC fish
|
||||
Some sane default options for ~sxiv~, a simple X image Viewer. This includes playing GIFs and not displaying the filename below. Sxiv will also open in fullscreen and will fit the displayed image to the frame. I also abbreviated ~feh~ to sxiv, old habits die hard.
|
||||
#+BEGIN_SRC fish
|
||||
abbr sxiv 'sxiv -abfs f'
|
||||
abbr feh 'sxiv -abfs f'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Finally, let's declare the following abbreviation that will launch an mpv
|
||||
instance displaying my webcam:
|
||||
#+BEGIN_SRC fish
|
||||
Finally, let's declare the following abbreviation that will launch an mpv instance displaying my webcam:
|
||||
#+BEGIN_SRC fish
|
||||
abbr webcam 'mpv --demuxer-lavf-format=video4linux2 --demuxer-lavf-o-set=input_format=mjpeg av://v4l2:/dev/video0'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Sudo
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-Sudo-aef0214a
|
||||
:END:
|
||||
First, I make it so that ~sudo~ comes with the ~-A~ switch in order to call
|
||||
my custom graphical script for getting my password (see [[file:bin.org::#Askpass-d0d7a8c0][askpass]]). I also
|
||||
made it so ~please~ is an equivalent to ~sudo -A~ as a joke.
|
||||
#+BEGIN_SRC fish
|
||||
First, I make it so that ~sudo~ comes with the ~-A~ switch in order to call my custom graphical script for getting my password (see [[file:bin.org::#Askpass-d0d7a8c0][askpass]]). I also made it so ~please~ is an equivalent to ~sudo -A~ as a joke.
|
||||
#+BEGIN_SRC fish
|
||||
abbr please 'sudo -A'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** History
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-History-a2124b23
|
||||
:END:
|
||||
I also find it more intuitive and faster to just write ~hist~ instead of
|
||||
~history~, so let's declare that.
|
||||
#+BEGIN_SRC fish
|
||||
I also find it more intuitive and faster to just write ~hist~ instead of ~history~, so let's declare that.
|
||||
#+BEGIN_SRC fish
|
||||
abbr hist history
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Compression
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-Compression-4fd4ffef
|
||||
:END:
|
||||
It seems it's just like many other people, but I cannot for the life of me
|
||||
remember the syntax of ~tar~. So, I made the following abbreviations, and
|
||||
one day hopefully, after seeing the abbreviations' expansion over and over
|
||||
I'll remember the command like I did for the abbreviation of ~remove~ (see
|
||||
[[#Abbreviations-System_management_(packages_and_services)-Package_management-efbcdf0f][Package management]]).
|
||||
#+NAME: tar-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+-----------|
|
||||
| compress | tar -czf |
|
||||
| untar | tar -xvzf |
|
||||
It seems it's just like many other people, but I cannot for the life of me remember the syntax of ~tar~. So, I made the following abbreviations, and one day hopefully, after seeing the abbreviations' expansion over and over I'll remember the command like I did for the abbreviation of ~remove~ (see [[#Abbreviations-System_management_(packages_and_services)-Package_management-efbcdf0f][Package management]]).
|
||||
#+NAME: tar-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+-----------|
|
||||
| compress | tar -czf |
|
||||
| untar | tar -xvzf |
|
||||
|
||||
#+BEGIN_SRC fish
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=tar-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** exa
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-exa-e1b528b9
|
||||
:END:
|
||||
#+NAME: exa-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------------------------------|
|
||||
| exa | exa -halg@ --group-directories-first --git |
|
||||
| ls | exa -halg@ --group-directories-first --git |
|
||||
| lsl | exa -halg@ --group-directories-first --git |
|
||||
#+NAME: exa-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+--------------------------------------------|
|
||||
| exa | exa -halg@ --group-directories-first --git |
|
||||
| ls | exa -halg@ --group-directories-first --git |
|
||||
| lsl | exa -halg@ --group-directories-first --git |
|
||||
|
||||
#+BEGIN_SRC fish
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=exa-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Network Management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-Network_Management-0b7fc91d
|
||||
:END:
|
||||
First, we have just =nmcli= with sane default options, that is a pretty output
|
||||
with colors.
|
||||
#+BEGIN_SRC fish
|
||||
First, we have just =nmcli= with sane default options, that is a pretty output with colors.
|
||||
#+BEGIN_SRC fish
|
||||
abbr nmcli 'nmcli -p -c auto'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** NordVPN
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-NordVPN-09438638
|
||||
:END:
|
||||
Next, we have some NordVPN-related shortcuts. The first one is a simple
|
||||
abbreviation to =nordvpn=. The second one is a shortcut to connect to a
|
||||
server, and to disconnect from the current server. I also have a couple of
|
||||
shortcuts to quickly connect to some preselected countries, mainly France,
|
||||
Germany, Japan and the US.
|
||||
#+NAME: nordvpn-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+-------------------------|
|
||||
| n | nordvpn |
|
||||
| nc | nordvpn c |
|
||||
| nd | nordvpn d |
|
||||
| ncf | nordvpn c France |
|
||||
| ncg | nordvpn c Germany |
|
||||
| ncj | nordvpn c Japan |
|
||||
| ncu | nordvpn c United_States |
|
||||
Next, we have some NordVPN-related shortcuts. The first one is a simple abbreviation to =nordvpn=. The second one is a shortcut to connect to a server, and to disconnect from the current server. I also have a couple of shortcuts to quickly connect to some preselected countries, mainly France, Germany, Japan and the US.
|
||||
#+NAME: nordvpn-abbr
|
||||
| abbreviation | command |
|
||||
|--------------+-------------------------|
|
||||
| n | nordvpn |
|
||||
| nc | nordvpn c |
|
||||
| nd | nordvpn d |
|
||||
| ncf | nordvpn c France |
|
||||
| ncg | nordvpn c Germany |
|
||||
| ncj | nordvpn c Japan |
|
||||
| ncu | nordvpn c United_States |
|
||||
|
||||
#+BEGIN_SRC fish
|
||||
#+BEGIN_SRC fish
|
||||
<<generate-abbr(table=nordvpn-abbr)>>
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Wget
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Abbreviations-Misc-Wget-27f4bebf
|
||||
:END:
|
||||
By default, continue a download that was interupted.
|
||||
#+BEGIN_SRC fish
|
||||
By default, continue a download that was interupted.
|
||||
#+BEGIN_SRC fish
|
||||
abbr wget 'wget -c'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
1128
org/config/i3.org
1128
org/config/i3.org
File diff suppressed because it is too large
Load Diff
@ -9,69 +9,51 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Presentation-981f2f04
|
||||
:END:
|
||||
This is my collection of dotfiles for my daily GNU/Linux environment, tweaked
|
||||
to my liking. If you wish to get the same setup as mine, follow the
|
||||
instructions below.
|
||||
This is my collection of dotfiles for my daily GNU/Linux environment, tweaked to my liking. If you wish to get the same setup as mine, follow the instructions below.
|
||||
|
||||
For starters, here is the link to all the pages on my website that you might
|
||||
find interesting. I’ll describe them in more details below.
|
||||
- [[file:installation.org][Arch Linux bootstrap script]]
|
||||
- [[file:awesome.org][AwesomeWM configuration]]
|
||||
- [[file:bin.org][Custom scripts]]
|
||||
- [[file:spacemacs.org][Emacs (Spacemacs) configuration]]
|
||||
- [[file:fish.org][Fish shell configuration]]
|
||||
- [[file:i3.org][i3 configuration]] (deprecated)
|
||||
- [[file:nano.org][Nano configuration]] (deprecated)
|
||||
- [[file:ncmpcpp.org][ncmpcpp configuration]] (work in progress)
|
||||
- [[file:neofetch.org][Neofetch configuration]]
|
||||
- [[file:picom.org][Picom configuration]] (new fork of Compton)
|
||||
- [[file:polybar.org][Polybar configuration]] (deprecated)
|
||||
- [[file:rustfmt.org][Rustfmt configuration]]
|
||||
- [[file:tmux.org][Tmux configuration]]
|
||||
For starters, here is the link to all the pages on my website that you might find interesting. I’ll describe them in more details below.
|
||||
- [[file:installation.org][Arch Linux bootstrap script]]
|
||||
- [[file:awesome.org][AwesomeWM configuration]]
|
||||
- [[file:bin.org][Custom scripts]]
|
||||
- [[file:spacemacs.org][Emacs (Spacemacs) configuration]]
|
||||
- [[file:fish.org][Fish shell configuration]]
|
||||
- [[file:i3.org][i3 configuration]] (deprecated)
|
||||
- [[file:nano.org][Nano configuration]] (deprecated)
|
||||
- [[file:ncmpcpp.org][ncmpcpp configuration]] (work in progress)
|
||||
- [[file:neofetch.org][Neofetch configuration]]
|
||||
- [[file:picom.org][Picom configuration]] (new fork of Compton)
|
||||
- [[file:polybar.org][Polybar configuration]] (deprecated)
|
||||
- [[file:rustfmt.org][Rustfmt configuration]]
|
||||
- [[file:tmux.org][Tmux configuration]]
|
||||
|
||||
As you can see, I personally use [[https://fishshell.com/][fish]] as my shell of choice, and [[https://www.gnu.org/software/emacs/][Emacs]] 28.0
|
||||
(using the ~native-comp~ branch) using [[http://spacemacs.org][Spacemacs]] (still with Emacs keybinding
|
||||
in Insert mode but with Evil in Normal mode) as my main text editor.
|
||||
As you can see, I personally use [[https://fishshell.com/][fish]] as my shell of choice, and [[https://www.gnu.org/software/emacs/][Emacs]] 28.0 (using the ~native-comp~ branch) using [[http://spacemacs.org][Spacemacs]] (still with Emacs keybinding in Insert mode but with Evil in Normal mode) as my main text editor.
|
||||
|
||||
When it comes to my graphical UI, I do not have any desktop environment.
|
||||
Instead, I have a tiling window manager, AwesomeWM. The historical first on my
|
||||
configuration is [[https://github.com/Airblader/i3][i3-gaps]], an [[https://i3wm.org/][i3]] fork by [[https://github.com/Airblader/i3][Airblader]] with which I use two bars
|
||||
generated by [[https://polybar.github.io/][Polybar]]. It used [[https://github.com/dylanaraps/pywal][pywal]] to define their color scheme, as well as
|
||||
[[https://github.com/davatorium/rofi][rofi]]’s color scheme. My other TWM and the one I currently use is [[https://awesomewm.org/][AwesomeWM]].
|
||||
When it comes to my graphical UI, I do not have any desktop environment. Instead, I have a tiling window manager, AwesomeWM. The historical first on my configuration is [[https://github.com/Airblader/i3][i3-gaps]], an [[https://i3wm.org/][i3]] fork by [[https://github.com/Airblader/i3][Airblader]] with which I use two bars generated by [[https://polybar.github.io/][Polybar]]. It used [[https://github.com/dylanaraps/pywal][pywal]] to define their color scheme, as well as [[https://github.com/davatorium/rofi][rofi]]’s color scheme. My other TWM and the one I currently use is [[https://awesomewm.org/][AwesomeWM]].
|
||||
|
||||
Finally, you can find my configuration for my ErgodoxEZ keyboard [[https://configure.ergodox-ez.com/ergodox-ez/layouts/5WrVw/latest/0][here]]. It is
|
||||
optimized for usage with the Bépo layout set as a software layout, and for
|
||||
shortcuts from i3.
|
||||
Finally, you can find my configuration for my ErgodoxEZ keyboard [[https://configure.ergodox-ez.com/ergodox-ez/layouts/5WrVw/latest/0][here]]. It is optimized for usage with the Bépo layout set as a software layout, and for shortcuts from i3.
|
||||
|
||||
* Screenshots
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Screenshots-51f1cef3
|
||||
:END:
|
||||
#+CAPTION: Desktop with Neofetch in the terminal
|
||||
[[./img/neofetch.png.webp]]
|
||||
|
||||
#+CAPTION: Desktop with Neofetch in the terminal
|
||||
[[./img/neofetch.png.webp]]
|
||||
#+CAPTION: Desktop with Emacs opened
|
||||
[[./img/emacs.png.webp]]
|
||||
|
||||
#+CAPTION: Desktop with Emacs opened
|
||||
[[./img/emacs.png.webp]]
|
||||
|
||||
#+CAPTION: Desktop with Rofi
|
||||
[[./img/rofi.png.webp]]
|
||||
#+CAPTION: Desktop with Rofi
|
||||
[[./img/rofi.png.webp]]
|
||||
|
||||
* Features
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-5ab2a2c0
|
||||
:END:
|
||||
- Emacs configuration perfectly tailored for my own use
|
||||
- Beautiful and comfy i3 and polybar configuration
|
||||
- And enough information below to get basically the same distro install as I
|
||||
have on my main computer and my travel laptop.
|
||||
- Emacs configuration perfectly tailored for my own use
|
||||
- Beautiful and comfy i3 and polybar configuration
|
||||
- And enough information below to get basically the same distro install as I have on my main computer and my travel laptop.
|
||||
|
||||
Most of the org files you will find in this repos are the actual source code
|
||||
of much of my config files. For instance, the bootstrap found in
|
||||
[[file:installation.org][installation.org]] exports almost all of its code snippets to
|
||||
[[file:.config/yadm/bootstrap][.config/yadm/bootstrap]] thanks to =M-x org-babel-tangle= from within Emacs.
|
||||
Below I will also present and comment some of my short config files which do
|
||||
not deserve to have a full org file dedicated to them.
|
||||
Most of the org files you will find in this repos are the actual source code of much of my config files. For instance, the bootstrap found in [[file:installation.org][installation.org]] exports almost all of its code snippets to [[file:.config/yadm/bootstrap][.config/yadm/bootstrap]] thanks to =M-x org-babel-tangle= from within Emacs. Below I will also present and comment some of my short config files which do not deserve to have a full org file dedicated to them.
|
||||
|
||||
** Tiling Window Managers
|
||||
:PROPERTIES:
|
||||
@ -81,25 +63,19 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Tiling_Window_Managers-AwesomeWM-2eac61a9
|
||||
:END:
|
||||
AwesomeWM is the TWM I use the most on my computer between itself and i3. My
|
||||
configuration for it is documented in detail in its corresponding document,
|
||||
which you can find [[file:awesome.org][here]].
|
||||
AwesomeWM is the TWM I use the most on my computer between itself and i3. My configuration for it is documented in detail in its corresponding document, which you can find [[file:awesome.org][here]].
|
||||
|
||||
*** i3 configuration (Deprecated)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Tiling_Window_Managers-i3_configuration-9c92e43c
|
||||
:END:
|
||||
The i3 configuration is detailed in its corresponding README which you can
|
||||
find [[file:i3.org][here]]. Be aware I do not use i3 anymore, and I will not update it until
|
||||
I may someday use it again. This was deprecated on August 22nd, 2020.
|
||||
The i3 configuration is detailed in its corresponding README which you can find [[file:i3.org][here]]. Be aware I do not use i3 anymore, and I will not update it until I may someday use it again. This was deprecated on August 22nd, 2020.
|
||||
|
||||
** Polybar config (Deprecated)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Polybar_config_(Deprecated)-c8f95774
|
||||
:END:
|
||||
My annotated polybar config can be found [[file:polybar.org][here]], if you wish to use it. Be
|
||||
aware I do not use polybar anymore, and I will not update it until I may
|
||||
someday use it again. This was deprecated on August 22nd, 2020.
|
||||
My annotated polybar config can be found [[file:polybar.org][here]], if you wish to use it. Be aware I do not use polybar anymore, and I will not update it until I may someday use it again. This was deprecated on August 22nd, 2020.
|
||||
|
||||
** Graphical tweaks
|
||||
:PROPERTIES:
|
||||
@ -118,167 +94,151 @@
|
||||
:HEADER-ARGS: :mkdirp yes :tangle ~/.gtkrc-2.0
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-GTK_Settings-GTK2-General_configuration-eb1f1f3c
|
||||
:END:
|
||||
This file is tangled at ~$HOME/.gtkrc-2.0~. This is an equivalent for the
|
||||
GTK3 configuration file you will see below, and it shares most of its
|
||||
settings. First, let’s select the Nordic theme for GTK2. Let’s also set
|
||||
the icon theme.
|
||||
#+BEGIN_SRC conf-unix
|
||||
This file is tangled at ~$HOME/.gtkrc-2.0~. This is an equivalent for the GTK3 configuration file you will see below, and it shares most of its settings. First, let’s select the Nordic theme for GTK2. Let’s also set the icon theme.
|
||||
#+BEGIN_SRC conf-unix
|
||||
# -*- mode: unix-config -*-
|
||||
gtk-theme-name="Nordic"
|
||||
gtk-icon-theme-name="Flat-Remix-Dark"
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle="hintslight"
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This changes the shortcuts in menu, let’s also make the menus snappier.
|
||||
#+BEGIN_SRC conf-unix
|
||||
This changes the shortcuts in menu, let’s also make the menus snappier.
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-can-change-accels=1
|
||||
gtk-menu-bar-popup-delay=0
|
||||
gtk-menu-popdown-delay=0
|
||||
gtk-menu-popup-delay=0
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
***** Filechooser
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :mkdirp yes :tangle ~/.config/gtk-2.0/gtkfilechooser.ini
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-GTK_Settings-GTK2-Filechooser-389f040d
|
||||
:END:
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+BEGIN_SRC conf-unix
|
||||
[Filechooser Settings]
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
The first option alows me to open the file chooser in the current working
|
||||
directory:
|
||||
#+BEGIN_SRC conf-unix
|
||||
The first option alows me to open the file chooser in the current working directory:
|
||||
#+BEGIN_SRC conf-unix
|
||||
StartupMode=cwd
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Next, setting the location mode to ~path-bar~ will show the path as buttons
|
||||
that can be clicked rather than the full path.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Next, setting the location mode to ~path-bar~ will show the path as buttons that can be clicked rather than the full path.
|
||||
#+BEGIN_SRC conf-unix
|
||||
LocationMode=path-bar
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
With this configuration, by default we won’t see hidden files.
|
||||
#+BEGIN_SRC conf-unix
|
||||
With this configuration, by default we won’t see hidden files.
|
||||
#+BEGIN_SRC conf-unix
|
||||
ShowHidden=true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
And we'll also see the size of the visible files.
|
||||
#+BEGIN_SRC conf-unix
|
||||
And we'll also see the size of the visible files.
|
||||
#+BEGIN_SRC conf-unix
|
||||
ShowSizeColumn=true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Now, let’s choose the geometry of our file picker. These two first lines
|
||||
set where the file picker appears:
|
||||
#+BEGIN_SRC conf-unix
|
||||
Now, let’s choose the geometry of our file picker. These two first lines set where the file picker appears:
|
||||
#+BEGIN_SRC conf-unix
|
||||
GeometryX=566
|
||||
GeometryY=202
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
And these two describe the size of the window:
|
||||
#+BEGIN_SRC conf-unix
|
||||
And these two describe the size of the window:
|
||||
#+BEGIN_SRC conf-unix
|
||||
GeometryWidth=800
|
||||
GeometryHeight=400
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
With these two lines, we set how our files are sorted: by name, and in the
|
||||
ascending order.
|
||||
#+BEGIN_SRC conf-unix
|
||||
With these two lines, we set how our files are sorted: by name, and in the ascending order.
|
||||
#+BEGIN_SRC conf-unix
|
||||
SortColumn=name
|
||||
SortOrder=ascending
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Our default view mode is a list of files:
|
||||
#+BEGIN_SRC conf-unix
|
||||
Our default view mode is a list of files:
|
||||
#+BEGIN_SRC conf-unix
|
||||
ViewMode=list-view
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
And finally, setting our icon view scale to ~-1~ sets the icon view to the
|
||||
max size.
|
||||
#+BEGIN_SRC conf-unix
|
||||
And finally, setting our icon view scale to ~-1~ sets the icon view to the max size.
|
||||
#+BEGIN_SRC conf-unix
|
||||
IconViewScale=-1
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
**** GTK3
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :mkdirp yes :tangle ~/.config/gtk-3.0/settings.ini
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-GTK_Settings-GTK3-3d6cba86
|
||||
:END:
|
||||
The following file helps me choosing the aspect of various GTK+ 3 software,
|
||||
including their theme and icons. First, let’s declare the header:
|
||||
#+BEGIN_SRC conf-unix
|
||||
The following file helps me choosing the aspect of various GTK+ 3 software, including their theme and icons. First, let’s declare the header:
|
||||
#+BEGIN_SRC conf-unix
|
||||
[Settings]
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Now, let’s hint to GTK that I prefer dark themes. This can have an
|
||||
influence also on some websites that can detect this preference and
|
||||
therefore set their own theme to dark by themselves.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Now, let’s hint to GTK that I prefer dark themes. This can have an influence also on some websites that can detect this preference and therefore set their own theme to dark by themselves.
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-application-prefer-dark-theme = true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Next, the icon theme is the Flat Remix Dark icon theme:
|
||||
#+BEGIN_SRC conf-unix
|
||||
Next, the icon theme is the Flat Remix Dark icon theme:
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-icon-theme-name = Flat-Remix-Dark
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Now, the general theme for GTK3 is Nordic.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Now, the general theme for GTK3 is Nordic.
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-theme-name = Nordic
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-can-change-accels=1
|
||||
gtk-menu-bar-popup-delay=0
|
||||
gtk-menu-popdown-delay=0
|
||||
gtk-menu-popup-delay=0
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle=hintslight
|
||||
# gtk-xft-rgba=rgb
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Since window decorations are handled by my WMs, I will leave this variable
|
||||
empty.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Since window decorations are handled by my WMs, I will leave this variable empty.
|
||||
#+BEGIN_SRC conf-unix
|
||||
gtk-decoration-layout=
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Picom (Compton)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-Picom-b5b9a4dd
|
||||
:END:
|
||||
Picom is a standalone compositor for Xorg, and the successor to Compton,
|
||||
itself successor to xcompmgr-dana, itself a fork of xcompmgr. You can find
|
||||
my Picom configuration [[file:picom.org][here]].
|
||||
Picom is a standalone compositor for Xorg, and the successor to Compton, itself successor to xcompmgr-dana, itself a fork of xcompmgr. You can find my Picom configuration [[file:picom.org][here]].
|
||||
|
||||
*** Xresources
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :mkdirp yes :tangle ~/.Xresources :exports code
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-Xresources-8b622de1
|
||||
:END:
|
||||
My Xresources file is very short. Indeed, it only contains two lines which
|
||||
are dedicated to my =st= terminal to set its font and shell. The font is set
|
||||
as follows.
|
||||
#+BEGIN_SRC conf
|
||||
My Xresources file is very short. Indeed, it only contains two lines which are dedicated to my =st= terminal to set its font and shell. The font is set as follows.
|
||||
#+BEGIN_SRC conf
|
||||
st.font: Fantasque Sans Mono:size=10:antialias=true
|
||||
#+END_SRC
|
||||
I can also set the transparency of st (my terminal emulator) like so:
|
||||
#+BEGIN_SRC conf
|
||||
st.alpha: 0.85
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Next is the declaration of my color theme. It is based on the [[https://www.nordtheme.com/][Nord]] theme,
|
||||
from their [[https://github.com/arcticicestudio/nord-xresources/][Git repository]].
|
||||
#+BEGIN_SRC conf
|
||||
I can also set the transparency of st (my terminal emulator) like so:
|
||||
#+BEGIN_SRC conf
|
||||
st.alpha: 0.85
|
||||
#+END_SRC
|
||||
|
||||
Next is the declaration of my color theme. It is based on the [[https://www.nordtheme.com/][Nord]] theme, from their [[https://github.com/arcticicestudio/nord-xresources/][Git repository]].
|
||||
#+BEGIN_SRC conf
|
||||
#define nord0 #2E3440
|
||||
#define nord1 #3B4252
|
||||
#define nord2 #434C5E
|
||||
@ -318,7 +278,7 @@
|
||||
,*.color13: nord15
|
||||
,*.color14: nord7
|
||||
,*.color15: nord6
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Text and source code editing
|
||||
:PROPERTIES:
|
||||
@ -328,47 +288,36 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Text_and_source_code_editing-Emacs_configuration-ef937102
|
||||
:END:
|
||||
Emacs is my main text editor, which I use for almost everything. Because,
|
||||
you know…
|
||||
#+begin_quote
|
||||
Emacs is a great operating system, it just lacks a good text editor.
|
||||
#+end_quote
|
||||
Emacs is my main text editor, which I use for almost everything. Because, you know…
|
||||
#+begin_quote
|
||||
Emacs is a great operating system, it just lacks a good text editor.
|
||||
#+end_quote
|
||||
|
||||
You can find my Emacs config, based on Spacemacs, in my [[https://labs.phundrak.com/phundrak/dotfiles/src/branch/master/.spacemacs][.spacemacs]] file, and
|
||||
my user configuration in my [[file:emacs.org][emacs.org]] file.
|
||||
You can find my Emacs config, based on Spacemacs, in my [[https://labs.phundrak.com/phundrak/dotfiles/src/branch/master/.spacemacs][.spacemacs]] file, and my user configuration in my [[file:emacs.org][emacs.org]] file.
|
||||
|
||||
*** Nano (deprecated)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Text_and_source_code_editing-Nano-a9d4839f
|
||||
:END:
|
||||
Although it is a very simple piece of software, nano does offer some
|
||||
customization. Mine can be found in my [[file:~/org/config-website/nano.org][nano.org]] file. Be aware I do not use
|
||||
nano anymore, and I will not update it until I may someday use it again.
|
||||
This was deprecated on August 28th, 2020.
|
||||
Although it is a very simple piece of software, nano does offer some customization. Mine can be found in my [[file:~/org/config-website/nano.org][nano.org]] file. Be aware I do not use nano anymore, and I will not update it until I may someday use it again. This was deprecated on August 28th, 2020.
|
||||
|
||||
*** Rustfmt
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Text_and_source_code_editing-Rustfmt-2c4ac0b3
|
||||
:END:
|
||||
You can find my Rustfmt configuration [[file:rustfmt.org][here]].
|
||||
You can find my Rustfmt configuration [[file:rustfmt.org][here]].
|
||||
|
||||
** Custom scripts in =PATH=
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Custom_scripts_in_=PATH=-043e8c8e
|
||||
:END:
|
||||
I have written some scripts that help me daily accomplish some simple tasks,
|
||||
like mounting and unmounting a drive or Android device, an emoji picker, a
|
||||
utility to set up my Wacom tablet, and so on. You can find them stored in my
|
||||
[[file:bin.org][bin.org]] file along with their detailed explanation in the README placed in
|
||||
the same folder —which is actually their source code once the org-mode file
|
||||
gets tangled.
|
||||
I have written some scripts that help me daily accomplish some simple tasks, like mounting and unmounting a drive or Android device, an emoji picker, a utility to set up my Wacom tablet, and so on. You can find them stored in my [[file:bin.org][bin.org]] file along with their detailed explanation in the README placed in the same folder —which is actually their source code once the org-mode file gets tangled.
|
||||
|
||||
** Fish configuration with useful abbreviations
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Fish_configuration_with_useful_abbreviations-c71ffba0
|
||||
:END:
|
||||
You can also find in my Fish shell configuration in my [[file:~/org/config-website/fish.org][fish.org]] file, which
|
||||
contains my usual abbreviations.
|
||||
You can also find in my Fish shell configuration in my [[file:~/org/config-website/fish.org][fish.org]] file, which contains my usual abbreviations.
|
||||
|
||||
** And some minor configuration files
|
||||
:PROPERTIES:
|
||||
@ -379,85 +328,69 @@
|
||||
:HEADER-ARGS: :mkdirp yes :tangle ~/.signature
|
||||
:CUSTOM_ID: Features-And_some_minor_configuration_files-Email_signature-8c5f2218
|
||||
:END:
|
||||
This file gets inserted automatically at the end of my emails.
|
||||
#+BEGIN_SRC text
|
||||
This file gets inserted automatically at the end of my emails.
|
||||
#+BEGIN_SRC text
|
||||
Lucien “Phundrak” Cartier-Tilet
|
||||
Étudiant en Master Informatique, Tuteur, Université Paris 8
|
||||
https://phundrak.com (Français)
|
||||
https://phundrak.com/en (English)
|
||||
|
||||
Sent from GNU/Emacs
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
*** Global gitignore
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :mkdirp yes :tangle ~/.gitignore_global
|
||||
:CUSTOM_ID: Features-And_some_minor_configuration_files-Global_gitignore-42467108
|
||||
:END:
|
||||
Sometimes, there are some lines that always reappear in gitignores. So,
|
||||
instead of always adding them, let git now that some elements are to be
|
||||
ignored by default, hence the [[file:.gitignore_global][~/.gitignore_global]] file. First, we don’t want
|
||||
nano’s backup files.
|
||||
#+BEGIN_SRC text
|
||||
Sometimes, there are some lines that always reappear in gitignores. So, instead of always adding them, let git now that some elements are to be ignored by default, hence the [[file:.gitignore_global][~/.gitignore_global]] file. First, we don’t want nano’s backup files.
|
||||
#+BEGIN_SRC text
|
||||
~*
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
And object files and output binaries generated by =gcc= and the likes aren’t
|
||||
welcome either.
|
||||
#+BEGIN_SRC text
|
||||
And object files and output binaries generated by =gcc= and the likes aren’t welcome either.
|
||||
#+BEGIN_SRC text
|
||||
,*.out
|
||||
,*.o
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Tmux configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Features-Tmux_configuration-ce76e030
|
||||
:END:
|
||||
You can find my tmux configuration in [[file:tmux.org][tmux.org]]. It depends on the submodule
|
||||
[[https://github.com/gpakosz/.tmux.git][.tmux]] by [[https://pempek.net/][Gregory Pakosz]].
|
||||
You can find my tmux configuration in [[file:tmux.org][tmux.org]]. It depends on the submodule [[https://github.com/gpakosz/.tmux.git][.tmux]] by [[https://pempek.net/][Gregory Pakosz]].
|
||||
|
||||
* Dependencies
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Dependencies-ef5057dd
|
||||
:END:
|
||||
Of course, some dependencies are needed for my dotfiles to work well. Here is
|
||||
a non-exhaustive list of software needed by these configuration files:
|
||||
- [[https://www.gnu.org/software/emacs/][GNU/Emacs]] >= 26.2
|
||||
Of course, some dependencies are needed for my dotfiles to work well. Here is a non-exhaustive list of software needed by these configuration files:
|
||||
- [[https://www.gnu.org/software/emacs/][GNU/Emacs]] >= 26.2
|
||||
- [[http://spacemacs.org][Spacemacs]] (develop branch)
|
||||
- My [[https://labs.phundrak.com/phundrak/conlang-layer][conlanging layer]]
|
||||
- [[https://github.com/venmos/w3m-layer][Venmos]]’ [[https://github.com/venmos/w3m-layer][w3m layer]]
|
||||
- The [[https://fishshell.com/][Fish shell]], using [[https://github.com/jorgebucaran/fisher][fisher]]
|
||||
- [[https://lukesmith.xyz/][Luke Smith]]’s [[https://github.com/LukeSmithxyz/st][fork]] of [[https://st.suckless.org/][st]]
|
||||
- [[https://resloved.info/][Resloved]]’s [[https://github.com/resloved/i3][i3-gaps-rounded]] fork of [[https://github.com/Airblader/i3][Airblader]]’s [[https://github.com/Airblader/i3][i3-gaps]], itself a fork of [[https://i3wm.org/][i3]]
|
||||
- [[https://github.com/yshui/compton][Compton]], more specificaly [[https://github.com/tryone144/compton][Tryone]]’s [[https://github.com/tryone144/compton][fork]]
|
||||
- [[https://github.com/dylanaraps/pywal/][pywal]]
|
||||
- [[https://tools.suckless.org/dmenu/][dmenu]]
|
||||
- [[https://github.com/enkore/j4-dmenu-desktop][j4-dmenu-desktop]]
|
||||
- [[https://github.com/davatorium/rofi][Rofi]]
|
||||
- [[https://github.com/gpoore/minted][minted]]
|
||||
- [[https://www.rust-lang.org/][Rust]] (stable and nightly)
|
||||
- [[https://www.latex-project.org/][LaTeX]] and [[http://xetex.sourceforge.net/][XeTeX]] (=texlive= packages on Arch Linux)
|
||||
- [[https://github.com/tmux/tmux][tmux]], based on [[https://github.com/gpakosz/.tmux][this repo]]’s configuration by [[https://pempek.net/][Grégory Pakosz]].
|
||||
- And a bunch of other stuff, see below
|
||||
And some other stuff scattered around in my dotfiles.
|
||||
- The [[https://fishshell.com/][Fish shell]], using [[https://github.com/jorgebucaran/fisher][fisher]]
|
||||
- [[https://lukesmith.xyz/][Luke Smith]]’s [[https://github.com/LukeSmithxyz/st][fork]] of [[https://st.suckless.org/][st]]
|
||||
- [[https://tools.suckless.org/dmenu/][dmenu]]
|
||||
- [[https://github.com/enkore/j4-dmenu-desktop][j4-dmenu-desktop]]
|
||||
- [[https://github.com/davatorium/rofi][Rofi]]
|
||||
- [[https://github.com/gpoore/minted][minted]]
|
||||
- [[https://www.rust-lang.org/][Rust]] (stable and nightly)
|
||||
- [[https://www.latex-project.org/][LaTeX]] and [[http://xetex.sourceforge.net/][XeTeX]] (=texlive= packages on Arch Linux)
|
||||
- [[https://github.com/tmux/tmux][tmux]], based on [[https://github.com/gpakosz/.tmux][this repo]]’s configuration by [[https://pempek.net/][Grégory Pakosz]].
|
||||
- And a bunch of other stuff, see below
|
||||
And some other stuff scattered around in my dotfiles.
|
||||
|
||||
BTW, I use Arch.
|
||||
BTW, I use Arch.
|
||||
|
||||
* Installation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Installation-9ec2ae86
|
||||
:END:
|
||||
For an installation walkthrough of my Arch Linux installation, check out my
|
||||
[[file:installation.org][installation.org]] file where I walk you through the first manual steps and
|
||||
through the bootstrap you can execute to automatically take care of a lot of
|
||||
elements.
|
||||
For an installation walkthrough of my Arch Linux installation, check out my [[file:installation.org][installation.org]] file where I walk you through the first manual steps and through the bootstrap you can execute to automatically take care of a lot of elements.
|
||||
|
||||
* Licence
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Licence-48911096
|
||||
:END:
|
||||
All of my dotfiles (and my dotfiles only) are available under the GNU GPLv3
|
||||
Licence. Please consult [[file:LICENCE.md]] for more information. In short: you
|
||||
are free to access, edit and redistribute all of my dotfiles under the same
|
||||
licence and as allowed by the licence, and if you fuck up something, it’s your
|
||||
own responsibility.
|
||||
All of my dotfiles (and my dotfiles only) are available under the GNU GPLv3 Licence. Please consult [[file:LICENCE.md]] for more information. In short: you are free to access, edit and redistribute all of my dotfiles under the same licence and as allowed by the licence, and if you fuck up something, it’s your own responsibility.
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -10,134 +10,106 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Introduction-7e535842
|
||||
:END:
|
||||
*Before proceeding, be aware that I deprecated this nano config on August
|
||||
28th, 2020, meaning I won’t update it anymore unless I use it again some day
|
||||
in the future. I will keep it on my website though.*
|
||||
*Before proceeding, be aware that I deprecated this nano config on August 28th, 2020, meaning I won’t update it anymore unless I use it again some day in the future. I will keep it on my website though.*
|
||||
|
||||
I nowadays rarely use Nano as a text editor, since I mainly rely on Emacs for
|
||||
all sorts of tasks, including quick file editing. However, at times, Emacs
|
||||
won’t work or won’t be available, and I therefore need a lightweight, fast and
|
||||
reliable text editor: Nano. And despite Nano being a simple piece of software,
|
||||
it does offer some customization I cannot refuse. Here is how I configured it:
|
||||
I nowadays rarely use Nano as a text editor, since I mainly rely on Emacs for all sorts of tasks, including quick file editing. However, at times, Emacs won’t work or won’t be available, and I therefore need a lightweight, fast and reliable text editor: Nano. And despite Nano being a simple piece of software, it does offer some customization I cannot refuse. Here is how I configured it:
|
||||
|
||||
* Configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Configuration-b55668a7
|
||||
:END:
|
||||
When saving a file, create a backup file by adding a tilde (=~=) to the file's
|
||||
name. And make and keep not just one backup file, but make and keep a uniquely
|
||||
numbered one every time a file is saved — when backups are enabled with =set
|
||||
backup= or =--backup= or =-B=. The uniquely numbered files are stored in the
|
||||
directory =~/.cache/nano/backups/=.
|
||||
#+BEGIN_SRC conf
|
||||
When saving a file, create a backup file by adding a tilde (=~=) to the file's name. And make and keep not just one backup file, but make and keep a uniquely numbered one every time a file is saved — when backups are enabled with =set backup= or =--backup= or =-B=. The uniquely numbered files are stored in the directory =~/.cache/nano/backups/=.
|
||||
#+BEGIN_SRC conf
|
||||
set backup
|
||||
set backupdir /home/phundrak/.cache/nano/backups/
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Save a file by default in Unix format. This overrides nano's default behavior
|
||||
of saving a file in the format that it had. (This option has no effect when
|
||||
you also use =set noconvert=.)
|
||||
#+BEGIN_SRC conf
|
||||
Save a file by default in Unix format. This overrides nano's default behavior of saving a file in the format that it had. (This option has no effect when you also use =set noconvert=.)
|
||||
#+BEGIN_SRC conf
|
||||
set unix
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Keys behavior
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Configuration-Keys_behavior-c665fa36
|
||||
:END:
|
||||
Make the Home key smarter. When Home is pressed anywhere but at the very
|
||||
beginning of non-whitespace characters on a line, the cursor will jump to
|
||||
that beginning (either forwards or backwards). If the cursor is already at
|
||||
that position, it will jump to the true beginning of the line.
|
||||
#+BEGIN_SRC conf
|
||||
Make the Home key smarter. When Home is pressed anywhere but at the very beginning of non-whitespace characters on a line, the cursor will jump to that beginning (either forwards or backwards). If the cursor is already at that position, it will jump to the true beginning of the line.
|
||||
#+BEGIN_SRC conf
|
||||
set smarthome
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Search
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Configuration-Search-6e458076
|
||||
:END:
|
||||
Do case-unsensitive searches by default.
|
||||
#+BEGIN_SRC conf
|
||||
Do case-unsensitive searches by default.
|
||||
#+BEGIN_SRC conf
|
||||
unset casesensitive
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Do regular-expression searches by default. Regular expressions in =nano= are
|
||||
of the extended type (ERE).
|
||||
#+BEGIN_SRC conf
|
||||
Do regular-expression searches by default. Regular expressions in =nano= are of the extended type (ERE).
|
||||
#+BEGIN_SRC conf
|
||||
set regexp
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Visual settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Configuration-Visual_settings-9952f2ae
|
||||
:END:
|
||||
Use bold instead of reverse video for the title bar, status bar, key combos,
|
||||
function tags, line numbers, and selected text. This can be overridden by
|
||||
setting the options =titlecolor=, =statuscolor=, =keycolor=, =functioncolor=,
|
||||
=numbercolor=, and =selectedcolor=.
|
||||
#+BEGIN_SRC conf
|
||||
Use bold instead of reverse video for the title bar, status bar, key combos, function tags, line numbers, and selected text. This can be overridden by setting the options =titlecolor=, =statuscolor=, =keycolor=, =functioncolor=, =numbercolor=, and =selectedcolor=.
|
||||
#+BEGIN_SRC conf
|
||||
set boldtext
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Enable soft line wrapping for easier viewing of very long lines.
|
||||
#+BEGIN_SRC conf
|
||||
Enable soft line wrapping for easier viewing of very long lines.
|
||||
#+BEGIN_SRC conf
|
||||
set softwrap
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
When soft line wrapping is enabled, make it wrap lines at blank characters
|
||||
(tabs and spaces) instead of always at the edge of the screen.
|
||||
#+BEGIN_SRC conf
|
||||
When soft line wrapping is enabled, make it wrap lines at blank characters (tabs and spaces) instead of always at the edge of the screen.
|
||||
#+BEGIN_SRC conf
|
||||
set atblanks
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Display line numbers to the left of the text area.
|
||||
#+BEGIN_SRC conf
|
||||
Display line numbers to the left of the text area.
|
||||
#+BEGIN_SRC conf
|
||||
set linenumbers
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Constantly display the cursor position in the status bar. This overrides the
|
||||
option =quickblank=.
|
||||
#+BEGIN_SRC conf
|
||||
Constantly display the cursor position in the status bar. This overrides the option =quickblank=.
|
||||
#+BEGIN_SRC conf
|
||||
set constantshow
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Whitespace settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Configuration-Whitespace_settings-8cef9cd7
|
||||
:END:
|
||||
Convert typed tabs to spaces. Sue me.
|
||||
#+BEGIN_SRC conf
|
||||
Convert typed tabs to spaces. Sue me.
|
||||
#+BEGIN_SRC conf
|
||||
set tabstospaces
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Use a tab size of a certain amount of columns. The value of number must be
|
||||
greater than 0. The default value is 8.
|
||||
#+BEGIN_SRC conf
|
||||
set tabsize 2
|
||||
#+END_SRC
|
||||
Use a tab size of a certain amount of columns. The value of number must be greater than 0. The default value is 8.
|
||||
#+BEGIN_SRC conf
|
||||
set tabsize 2
|
||||
#+END_SRC
|
||||
|
||||
Automatically indent a newly created line to the same number of tabs and/or
|
||||
spaces as the previous line (or as the next line if the previous line is the
|
||||
beginning of a paragraph).
|
||||
#+BEGIN_SRC conf
|
||||
Automatically indent a newly created line to the same number of tabs and/or spaces as the previous line (or as the next line if the previous line is the beginning of a paragraph).
|
||||
#+BEGIN_SRC conf
|
||||
set autoindent
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Remove trailing whitespace from wrapped lines when automatic hard-wrapping
|
||||
occurs or when text is justified.
|
||||
#+BEGIN_SRC conf
|
||||
set trimblanks
|
||||
#+END_SRC
|
||||
Remove trailing whitespace from wrapped lines when automatic hard-wrapping occurs or when text is justified.
|
||||
#+BEGIN_SRC conf
|
||||
set trimblanks
|
||||
#+END_SRC
|
||||
|
||||
** Included configuration file
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Configuration-Included_configuration_file-70b0f35b
|
||||
:END:
|
||||
Nano gives the opportunity to include some files located elsewhere. This is
|
||||
why I added [[https://github.com/scopatz/nanorc][this repo]] as a submodule of my dotfiles so I can access a lot of
|
||||
them at the same time. Since the submodule is cloned in =~/.config/nanorc=,
|
||||
we can add only one line to include all of the =.nanorc= files.
|
||||
#+BEGIN_SRC conf
|
||||
Nano gives the opportunity to include some files located elsewhere. This is why I added [[https://github.com/scopatz/nanorc][this repo]] as a submodule of my dotfiles so I can access a lot of them at the same time. Since the submodule is cloned in =~/.config/nanorc=, we can add only one line to include all of the =.nanorc= files.
|
||||
#+BEGIN_SRC conf
|
||||
include ~/.config/nano/nano-syntax/*.nanorc
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
@ -10,55 +10,47 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Introduction-3e61ecfc
|
||||
:END:
|
||||
Ncmpcpp is a TUI front-end for MPD, with an UI very similar to Ncmpc. This is
|
||||
my main MPD front-end after my i3 shortcuts. You can find below some
|
||||
screenshots of how my current ncmpcpp configuration looks like.
|
||||
Ncmpcpp is a TUI front-end for MPD, with an UI very similar to Ncmpc. This is
|
||||
my main MPD front-end after my i3 shortcuts. You can find below some
|
||||
screenshots of how my current ncmpcpp configuration looks like.
|
||||
|
||||
[[file:img/ncmpcpp-queue.png]]
|
||||
[[file:img/ncmpcpp-queue.png]]
|
||||
|
||||
[[file:img/ncmpcpp-directory.png]]
|
||||
[[file:img/ncmpcpp-directory.png]]
|
||||
|
||||
[[file:img/ncmpcpp-visualizer.png]]
|
||||
[[file:img/ncmpcpp-visualizer.png]]
|
||||
|
||||
* Core Ncmpcpp settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Core_Ncmpcpp_settings-8cacae18
|
||||
:END:
|
||||
#+BEGIN_SRC conf :exports none
|
||||
#+BEGIN_SRC conf :exports none
|
||||
# -*- mode: conf -*-
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Directories
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Core_Ncmpcpp_settings-Directories-28092c92
|
||||
:END:
|
||||
Ncmpcpp has two vital directories: the lyrics directory, and its own
|
||||
configuration directory. The configuration for ncmpcpp is generally either in
|
||||
~$HOME/.ncmpcpp/~ or in ~$XDG_CONFIG_HOME/ncmpcpp/~.
|
||||
#+BEGIN_SRC conf
|
||||
Ncmpcpp has two vital directories: the lyrics directory, and its own configuration directory. The configuration for ncmpcpp is generally either in ~$HOME/.ncmpcpp/~ or in ~$XDG_CONFIG_HOME/ncmpcpp/~.
|
||||
#+BEGIN_SRC conf
|
||||
ncmpcpp_directory = ~/.config/ncmpcpp
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
When it comes to the lyrics, be sure to set the directory to the same
|
||||
directory pointed at by Mpd.
|
||||
#+BEGIN_SRC conf
|
||||
When it comes to the lyrics, be sure to set the directory to the same directory pointed at by Mpd.
|
||||
#+BEGIN_SRC conf
|
||||
lyrics_directory = ~/.lyrics
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** MPD
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Core_Ncmpcpp_settings-MPD-a2a7452e
|
||||
:END:
|
||||
These settings tell ncmpcpp how to communicate with Mpd. Once again, be sure
|
||||
to follow your own MPD settings. In my case, I am connecting to my local MPD
|
||||
server, hence the ~localhost~ value of the variable below, and I did not
|
||||
change the default port of MPD. My music is located at =~/Music=, and ncmpcpp
|
||||
should connect pretty much immediately, although I allow a five seconds
|
||||
timeout before ncmpcpp treats it as an error. Also, no crossfade please.
|
||||
#+BEGIN_SRC conf
|
||||
These settings tell ncmpcpp how to communicate with Mpd. Once again, be sure to follow your own MPD settings. In my case, I am connecting to my local MPD server, hence the ~localhost~ value of the variable below, and I did not change the default port of MPD. My music is located at =~/Music=, and ncmpcpp should connect pretty much immediately, although I allow a five seconds timeout before ncmpcpp treats it as an error. Also, no crossfade please.
|
||||
#+BEGIN_SRC conf
|
||||
mpd_host = localhost
|
||||
mpd_port = 6600
|
||||
mpd_music_dir = ~/Music
|
||||
mpd_connection_timeout = 5
|
||||
mpd_crossfade_time = 0
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
@ -11,53 +11,40 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Introduction-5942aea3
|
||||
:END:
|
||||
[[https://github.com/dylanaraps/neofetch][Neofetch]] is a CLI utility used to display system information. It was written
|
||||
in Bash, and thus its configuration file is written as a Bash script too. This
|
||||
document was written with org-mode, and my configuration file is tangled from
|
||||
the source blocks you will see below to ~~/.config/neofetch/config.conf~.
|
||||
This configuration will only contain what I need. For any further information,
|
||||
please refer to the [[https://github.com/dylanaraps/neofetch][original repository]] and [[https://github.com/dylanaraps/neofetch/wiki/Customizing-Info][its documentation]].
|
||||
[[https://github.com/dylanaraps/neofetch][Neofetch]] is a CLI utility used to display system information. It was written in Bash, and thus its configuration file is written as a Bash script too. This document was written with org-mode, and my configuration file is tangled from the source blocks you will see below to ~~/.config/neofetch/config.conf~. This configuration will only contain what I need. For any further information, please refer to the [[https://github.com/dylanaraps/neofetch][original repository]] and [[https://github.com/dylanaraps/neofetch/wiki/Customizing-Info][its documentation]].
|
||||
|
||||
* The ~print_info~ functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: The_print_info_functions-bb30763f
|
||||
:END:
|
||||
The ~print_info~ function is the function called by Neofetch in order to print
|
||||
the system information it could fetch. In this function, we’ll choose what to
|
||||
display, and how. This function looks like this:
|
||||
#+BEGIN_SRC sh :tangle no
|
||||
The ~print_info~ function is the function called by Neofetch in order to print the system information it could fetch. In this function, we’ll choose what to display, and how. This function looks like this:
|
||||
#+BEGIN_SRC sh :tangle no
|
||||
print_info() {
|
||||
# Print information here…
|
||||
}
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Generally, what we will display will be shown through the ~info~ function,
|
||||
redefined inside Neofetch (this is not ~info(1)~). This ~info~ function
|
||||
accepts one or two arguments. With one argument, such as with ~info memory~,
|
||||
we can get a result that looks like ~5136MiB / 15873MiB~, while calling it
|
||||
with two arguments will treat the first one as a prefix and the second one as
|
||||
the interesting information; ~info "Memory" memory~ will look like
|
||||
~Memory: 5136MiB / 15873MiB~. Here is what we want to display:
|
||||
#+NAME: info-elements-table
|
||||
| Prefix | Information | What it does |
|
||||
|----------+-------------+-----------------------------------|
|
||||
| | title | Username and hostname |
|
||||
| | line_break | Insert a blank line |
|
||||
| | cols | System theme |
|
||||
| | line_break | Insert a blank line |
|
||||
| OS | distro | Distribution name |
|
||||
| Kernel | kernel | Kernel version |
|
||||
| Uptime | uptime | Machine uptime |
|
||||
| Packages | packages | Number of installed packages |
|
||||
| Shell | shell | User’s default shell |
|
||||
| WM | wm | User’s Window Manager |
|
||||
| Terminal | term | Default terminal |
|
||||
| CPU | cpu | CPU information |
|
||||
| GPU | gpu | GPU information |
|
||||
| Memory | memory | RAM information |
|
||||
Generally, what we will display will be shown through the ~info~ function, redefined inside Neofetch (this is not ~info(1)~). This ~info~ function accepts one or two arguments. With one argument, such as with ~info memory~, we can get a result that looks like ~5136MiB / 15873MiB~, while calling it with two arguments will treat the first one as a prefix and the second one as the interesting information; ~info "Memory" memory~ will look like ~Memory: 5136MiB / 15873MiB~. Here is what we want to display:
|
||||
#+NAME: info-elements-table
|
||||
| Prefix | Information | What it does |
|
||||
|----------+-------------+------------------------------|
|
||||
| | title | Username and hostname |
|
||||
| | line_break | Insert a blank line |
|
||||
| | cols | System theme |
|
||||
| | line_break | Insert a blank line |
|
||||
| OS | distro | Distribution name |
|
||||
| Kernel | kernel | Kernel version |
|
||||
| Uptime | uptime | Machine uptime |
|
||||
| Packages | packages | Number of installed packages |
|
||||
| Shell | shell | User’s default shell |
|
||||
| WM | wm | User’s Window Manager |
|
||||
| Terminal | term | Default terminal |
|
||||
| CPU | cpu | CPU information |
|
||||
| GPU | gpu | GPU information |
|
||||
| Memory | memory | RAM information |
|
||||
|
||||
#+NAME: info-elements-gen
|
||||
#+BEGIN_SRC emacs-lisp :var table=info-elements-table :cache yes
|
||||
#+NAME: info-elements-gen
|
||||
#+BEGIN_SRC emacs-lisp :var table=info-elements-table :cache yes
|
||||
(mapconcat (lambda (x)
|
||||
(format "info %s%s"
|
||||
(if (not (string= (car x) ""))
|
||||
@ -66,46 +53,42 @@
|
||||
(cadr x)))
|
||||
table
|
||||
"\n")
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS[1e66bf48472ad24006f0cb9dc9c86078764ba84e]: info-elements-gen
|
||||
#+begin_example
|
||||
info line_break
|
||||
info title
|
||||
info line_break
|
||||
info cols
|
||||
info line_break
|
||||
info "OS" distro
|
||||
info "Kernel" kernel
|
||||
info "Uptime" uptime
|
||||
info "Packages" packages
|
||||
info "Shell" shell
|
||||
info "WM" wm
|
||||
info "Terminal" term
|
||||
info "CPU" cpu
|
||||
info "GPU" gpu
|
||||
info "Memory" memory
|
||||
info "Disks" disks
|
||||
#+end_example
|
||||
#+RESULTS[1e66bf48472ad24006f0cb9dc9c86078764ba84e]: info-elements-gen
|
||||
#+begin_example
|
||||
info line_break
|
||||
info title
|
||||
info line_break
|
||||
info cols
|
||||
info line_break
|
||||
info "OS" distro
|
||||
info "Kernel" kernel
|
||||
info "Uptime" uptime
|
||||
info "Packages" packages
|
||||
info "Shell" shell
|
||||
info "WM" wm
|
||||
info "Terminal" term
|
||||
info "CPU" cpu
|
||||
info "GPU" gpu
|
||||
info "Memory" memory
|
||||
info "Disks" disks
|
||||
#+end_example
|
||||
|
||||
Hence, the function looks like so:
|
||||
#+BEGIN_SRC sh
|
||||
Hence, the function looks like so:
|
||||
#+BEGIN_SRC sh
|
||||
print_info() {
|
||||
<<info-elements-gen()>>
|
||||
}
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Each of these modules can be tuned with the variables presented below.
|
||||
Each of these modules can be tuned with the variables presented below.
|
||||
|
||||
* Information settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-9d4cfe88
|
||||
:END:
|
||||
Each of the following variable tunes a function that can be called in
|
||||
~print_info~ described above. It is possible to tune them by modifying this
|
||||
document or the configuration file itself, and they can be overridden by the
|
||||
command line with flags passed to ~neofetch~. I will divide these variables in
|
||||
two main categories: hardware and software-related properties.
|
||||
Each of the following variable tunes a function that can be called in ~print_info~ described above. It is possible to tune them by modifying this document or the configuration file itself, and they can be overridden by the command line with flags passed to ~neofetch~. I will divide these variables in two main categories: hardware and software-related properties.
|
||||
|
||||
** Software
|
||||
:PROPERTIES:
|
||||
@ -119,73 +102,72 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-OS-Distro-cd12bc4f
|
||||
:END:
|
||||
This variable can shorten the output of the ~distro~ function.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
This variable can shorten the output of the ~distro~ function.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--distro_shorthand~
|
||||
- Supports :: Everything except Windows and Haiku
|
||||
- Examples ::
|
||||
- Flag :: ~--distro_shorthand~
|
||||
- Supports :: Everything except Windows and Haiku
|
||||
- Examples ::
|
||||
- on :: ~Arch Linux~
|
||||
- off :: ~Arch~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
distro_shorthand="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
It is possible to display when the distro has been installed on the computer.
|
||||
It is possible to display when the distro has been installed on the computer.
|
||||
|
||||
**** Kernel
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-OS-Kernel-658cedce
|
||||
:END:
|
||||
The variable below can shorten the output ofh the ~kernel~ function.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
The variable below can shorten the output ofh the ~kernel~ function.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--kernel_shorthand~
|
||||
- Supports :: Everything except *BSDs (except PacBSD and PC-BSD)
|
||||
- Examples ::
|
||||
- Flag :: ~--kernel_shorthand~
|
||||
- Supports :: Everything except *BSDs (except PacBSD and PC-BSD)
|
||||
- Examples ::
|
||||
- on :: ~4.8.9-1-ARCH~
|
||||
- off :: ~Linux 4.8.9-1-ARCH~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
kernel_shorthand="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** OS Architecture
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-OS-OS_Architecture-2f60c93c
|
||||
:END:
|
||||
This variable can show or hide the OS architecture in the ~distro~ output.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
This variable can show or hide the OS architecture in the ~distro~ output.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--os_arch~
|
||||
- Examples ::
|
||||
- Flag :: ~--os_arch~
|
||||
- Examples ::
|
||||
- on :: ~Arch Linux x86_64~
|
||||
- off :: ~Arch Linux~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
os_arch="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** Packages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-OS-Packages-f836a58d
|
||||
:END:
|
||||
It is possible to show or hide Package Manager names.
|
||||
|
||||
- Default :: ~'tiny'~
|
||||
- Values :: ~'on'~ / ~'tiny'~ / ~'off'~
|
||||
- Flag :: ~--package_managers~
|
||||
- Example ::
|
||||
It is possible to show or hide Package Manager names.
|
||||
- Default :: ~'tiny'~
|
||||
- Values :: ~'on'~ / ~'tiny'~ / ~'off'~
|
||||
- Flag :: ~--package_managers~
|
||||
- Example ::
|
||||
- on :: ~'998 (pacman), 8 (flatpak), 4 (snap)'~
|
||||
- tiny :: ~'908 (pacman, flatpak, snap)'~
|
||||
- off :: ~'908'~
|
||||
#+BEGIN_SRC sh
|
||||
#+BEGIN_SRC sh
|
||||
package_managers="on"
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
**** Shell
|
||||
:PROPERTIES:
|
||||
@ -195,142 +177,136 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Shell-Shell_path-9eda636d
|
||||
:END:
|
||||
This allows to show either the path of the user’s shell, or simply its
|
||||
name.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
This allows to show either the path of the user’s shell, or simply its name.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--shell_path~
|
||||
- Examples ::
|
||||
- Flag :: ~--shell_path~
|
||||
- Examples ::
|
||||
- on :: ~/bin/bash~
|
||||
- off :: ~bash~
|
||||
#+begin_src sh
|
||||
+begin_src sh
|
||||
shell_path="off"
|
||||
#+end_src
|
||||
+end_src
|
||||
|
||||
***** Shell version
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Shell-Shell_version-03964bb3
|
||||
:END:
|
||||
This allows to show the shell’s version in the output of ~shell~.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
This allows to show the shell’s version in the output of ~shell~.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--shell_version~
|
||||
- Examples ::
|
||||
- Flag :: ~--shell_version~
|
||||
- Examples ::
|
||||
- on :: ~bash 4.4.5~
|
||||
- off :: ~bash~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
shell_version="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
*** Uptime
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Uptime-a7b5361a
|
||||
:END:
|
||||
This variable can shorten the output of the ~uptime~ function. ~on~ shortens
|
||||
it a bit, while ~tiny~ shortens it greatly.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
This variable can shorten the output of the ~uptime~ function. ~on~ shortens
|
||||
it a bit, while ~tiny~ shortens it greatly.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"tiny"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--uptime_shorthand~
|
||||
- Examples ::
|
||||
- Flag :: ~--uptime_shorthand~
|
||||
- Examples ::
|
||||
- on :: ~2 days, 10 hours, 3 mins~
|
||||
- off :: ~2 days, 10 hours, 3 minutes~
|
||||
- tiny :: ~2d 10h 3m~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
uptime_shorthand="on"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
*** IP address
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-IP_address-26df5e1d
|
||||
:END:
|
||||
It is possible to display the machine’s public IP address with the function
|
||||
~ip~. The value below allows the user to change the website used to fetch
|
||||
it.
|
||||
- Default value :: ~"http://ident.me"~
|
||||
- Value :: ~"url"~
|
||||
- Flag :: ~--ip_host~
|
||||
#+begin_src sh
|
||||
It is possible to display the machine’s public IP address with the function ~ip~. The value below allows the user to change the website used to fetch it.
|
||||
- Default value :: ~"http://ident.me"~
|
||||
- Value :: ~"url"~
|
||||
- Flag :: ~--ip_host~
|
||||
#+begin_src sh
|
||||
public_ip_host="http://ident.me"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
- Default value :: ~""~
|
||||
- Values ::
|
||||
- Default value :: ~""~
|
||||
- Values ::
|
||||
- ~""~
|
||||
- ~""~
|
||||
- Flag :: ~""~
|
||||
- Supports ::
|
||||
- Examples ::
|
||||
- Flag :: ~""~
|
||||
- Supports ::
|
||||
- Examples ::
|
||||
- on :: ~~
|
||||
- off :: ~~
|
||||
#+begin_src sh
|
||||
#+end_src
|
||||
#+begin_src sh
|
||||
#+end_src
|
||||
|
||||
*** Theming
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-ba7f1ccd
|
||||
:END:
|
||||
This section will allow the user to modify what Neofetch can and cannot
|
||||
display about the machine’s theming —by this, I mean its GTK theme, its
|
||||
icons and its default font.
|
||||
This section will allow the user to modify what Neofetch can and cannot display about the machine’s theming —by this, I mean its GTK theme, its icons and its default font.
|
||||
|
||||
**** Shorten output
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-Shorten_output-cbef1fa4
|
||||
:END:
|
||||
With this value, it is possible to shorten the output of the computer’s
|
||||
theming.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
With this value, it is possible to shorten the output of the computer’s theming.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--gtk_shorthand~
|
||||
- Examples ::
|
||||
- Flag :: ~--gtk_shorthand~
|
||||
- Examples ::
|
||||
- on :: ~Numix, Adwaita~
|
||||
- off :: ~Numix [GTK2], Adwaita [GTK3]~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
gtk_shorthand="on"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** Enable or disable theming display for GTK2
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-Enable_or_disable_theming_display_for_GTK2-f4398571
|
||||
:END:
|
||||
It is possible to explicitely show or hide the computer’s theming with GTK2
|
||||
with this variable.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
It is possible to explicitely show or hide the computer’s theming with GTK2 with this variable.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--gtk2~
|
||||
- Examples ::
|
||||
- Flag :: ~--gtk2~
|
||||
- Examples ::
|
||||
- on :: ~Numix [GTK2], Adwaita [GTK3]~
|
||||
- off :: ~Adwaita [GTK3]~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
gtk2="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** Enable or disable theming display for GTK3
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-Enable_or_disable_theming_display_for_GTK3-c4070e66
|
||||
:END:
|
||||
The same variable as above is also available for GTK3.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
The same variable as above is also available for GTK3.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--gtk3~
|
||||
- Examples ::
|
||||
- Flag :: ~--gtk3~
|
||||
- Examples ::
|
||||
- on :: ~Numix [GTK2], Adwaita [GTK3]~
|
||||
- off :: ~Numix [GTK2]~
|
||||
#+begin_src sh
|
||||
#+end_src
|
||||
#+begin_src sh
|
||||
gtk3="off"
|
||||
#+end_src
|
||||
|
||||
** Hardware
|
||||
:PROPERTIES:
|
||||
@ -340,164 +316,152 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-eb0bcd7d
|
||||
:END:
|
||||
|
||||
**** CPU brand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_brand-5b25776b
|
||||
:END:
|
||||
With this variables, it is possible to show or hide the brand of a CPU in
|
||||
the ~cpu~ output.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
With this variables, it is possible to show or hide the brand of a CPU in
|
||||
the ~cpu~ output.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--cpu_brand~
|
||||
- Examples ::
|
||||
- Flag :: ~--cpu_brand~
|
||||
- Examples ::
|
||||
- on :: ~Intel i7-6500U~
|
||||
- off :: ~i7-6500U~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
cpu_brand="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** CPU speed
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_speed-2bf6e5f7
|
||||
:END:
|
||||
With this variable, it is possible to show or hide the speed of the CPU.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
With this variable, it is possible to show or hide the speed of the CPU.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--cpu_speed~
|
||||
- Examples ::
|
||||
- Flag :: ~--cpu_speed~
|
||||
- Examples ::
|
||||
- on :: ~Intel i7-6500U (4) @ 3.1GHz~
|
||||
- off :: ~Intel i7-6500U (4)~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
cpu_speed="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** CPU speed type
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_speed_type-a24de48f
|
||||
:END:
|
||||
This allows Neofetch to know what type of speed it has to fetch regarding
|
||||
the machine’s CPU. Any file in ~/sys/devices/system/cpu/cpu0/cpufreq~ can
|
||||
be used as a value.
|
||||
- Default value :: ~"bios_limit"~
|
||||
- Values ::
|
||||
This allows Neofetch to know what type of speed it has to fetch regarding the machine’s CPU. Any file in ~/sys/devices/system/cpu/cpu0/cpufreq~ can be used as a value.
|
||||
- Default value :: ~"bios_limit"~
|
||||
- Values ::
|
||||
- ~"scaling_cur_freq"~
|
||||
- ~"scaling_min_freq"~
|
||||
- ~"scaling_max_freq"~
|
||||
- ~"bios_limit"~
|
||||
- Flag :: ~--speed_type~
|
||||
- Supports :: Linux with ~cpufreq~
|
||||
#+begin_src sh
|
||||
- Flag :: ~--speed_type~
|
||||
- Supports :: Linux with ~cpufreq~
|
||||
#+begin_src sh
|
||||
speed_type="bios_limit"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** CPU speed shorthand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_speed_shorthand-0d15fe08
|
||||
:END:
|
||||
This value allows to show sorter CPU speed with less digits. This flag is
|
||||
not supported in systems with CPU speed below 1GHz.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
This value allows to show sorter CPU speed with less digits. This flag is not supported in systems with CPU speed below 1GHz.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"on"~
|
||||
- Flag :: ~--speed_shorthand~
|
||||
- Examples ::
|
||||
- Flag :: ~--speed_shorthand~
|
||||
- Examples ::
|
||||
- on :: ~i7-6500U (4) @ 3.1GHz~
|
||||
- off :: ~i7-6500U (4) @ 3.100GHz~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
speed_shorthand="on"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** CPU cores
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_cores-30177354
|
||||
:END:
|
||||
With this variable, it is possible to display the number of cores that are
|
||||
available in the CPU.
|
||||
- Default value :: ~"logical"~
|
||||
- Values ::
|
||||
With this variable, it is possible to display the number of cores that are available in the CPU.
|
||||
- Default value :: ~"logical"~
|
||||
- Values ::
|
||||
- ~"logical"~
|
||||
- ~"physical"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--cpu_cores~
|
||||
- Supports :: ~physical~ does not work on BSD.
|
||||
- Examples ::
|
||||
- Flag :: ~--cpu_cores~
|
||||
- Supports :: ~physical~ does not work on BSD.
|
||||
- Examples ::
|
||||
- logical :: ~Intel i7-6500U (4) @ 3.1GHz~ (All virtual cores)
|
||||
- physical :: ~Intel i7-6500U (2) @ 3.1GHz~ (All physical cores)
|
||||
- off :: ~Intel i7-6500U @ 3.1GHz~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
cpu_cores="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** CPU temperature
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_temperature-a22e522c
|
||||
:END:
|
||||
This variable allows the user to hide or show the CPU’s temperature, and if
|
||||
shown, the user can display it in Celcius or Farenheit degrees. For FreeBSD
|
||||
and NetBSD-based systems, you’ll need to enable the ~coretemp~ kernel
|
||||
module. This only supports newer Intel processors.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
This variable allows the user to hide or show the CPU’s temperature, and if shown, the user can display it in Celcius or Farenheit degrees. For FreeBSD and NetBSD-based systems, you’ll need to enable the ~coretemp~ kernel module. This only supports newer Intel processors.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
- ~"C"~
|
||||
- ~"F"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--cpu_temp~
|
||||
- Supports :: Linux, BSD
|
||||
- Examples ::
|
||||
- Flag :: ~--cpu_temp~
|
||||
- Supports :: Linux, BSD
|
||||
- Examples ::
|
||||
- C :: ~Intel i7-6500U (4) @ 3.1GHz [27.2°C]~
|
||||
- F :: ~Intel i7-6500U (4) @ 3.1GHz [82.0°F]~
|
||||
- off :: ~Intel i7-6500U (4) @ 3.1GHz~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
cpu_temp="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
*** GPU
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-GPU-2c842575
|
||||
:END:
|
||||
The function responsible for displaying information regarding the GPUs is
|
||||
~gpu~. It will try to list all available GPUs and display what it knows
|
||||
about them.
|
||||
The function responsible for displaying information regarding the GPUs is ~gpu~. It will try to list all available GPUs and display what it knows about them.
|
||||
|
||||
**** GPU brand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-GPU-GPU_brand-6e2da615
|
||||
:END:
|
||||
This value allows the user to hide or show the brand of their GPU in the
|
||||
output of ~gpu~.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
This value allows the user to hide or show the brand of their GPU in the output of ~gpu~.
|
||||
- Default value :: ~"on"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--gpu_brand~
|
||||
- Supports ::
|
||||
- Examples ::
|
||||
- Flag :: ~--gpu_brand~
|
||||
- Supports ::
|
||||
- Examples ::
|
||||
- on :: ~AMD HD 7950~
|
||||
- off :: ~HD 7950~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
gpu_brand="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
**** Which GPU to display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-GPU-Which_GPU_to_display-f40d3aac
|
||||
:END:
|
||||
This allows the user to choose which GPU appears in the output of the
|
||||
function ~gpu~.
|
||||
- Default value :: ~"all"~
|
||||
- Values ::
|
||||
This allows the user to choose which GPU appears in the output of the function ~gpu~.
|
||||
- Default value :: ~"all"~
|
||||
- Values ::
|
||||
- ~"all"~
|
||||
- ~"dedicated"~
|
||||
- ~"integrated"~
|
||||
- Flag :: ~--gpu_type~
|
||||
- Supports :: Linux
|
||||
- Examples ::
|
||||
- Flag :: ~--gpu_type~
|
||||
- Supports :: Linux
|
||||
- Examples ::
|
||||
- all ::
|
||||
#+BEGIN_SRC text
|
||||
GPU1: AMD HD 7950
|
||||
@ -505,25 +469,24 @@
|
||||
#+END_SRC
|
||||
- dedicated :: ~GPU1: AMD HD 7950~
|
||||
- integrated :: ~GPU1: Intel Integrated Graphics~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
gpu_type="all"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
||||
*** Resolution
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Information_settings-Hardware-Resolution-b768f865
|
||||
:END:
|
||||
This will try to list all the connected screens and display their resolution
|
||||
individually. It is possible to display the refresh rate or to hide it.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
This will try to list all the connected screens and display their resolution individually. It is possible to display the refresh rate or to hide it.
|
||||
- Default value :: ~"off"~
|
||||
- Values ::
|
||||
- ~"on"~
|
||||
- ~"off"~
|
||||
- Flag :: ~--refresh_rate~
|
||||
- Supports :: Does not work on Windows
|
||||
- Examples ::
|
||||
- Flag :: ~--refresh_rate~
|
||||
- Supports :: Does not work on Windows
|
||||
- Examples ::
|
||||
- on :: ~1920x1080 @ 60Hz~
|
||||
- off :: ~1920x1080~
|
||||
#+begin_src sh
|
||||
#+begin_src sh
|
||||
refresh_rate="off"
|
||||
#+end_src
|
||||
#+end_src
|
||||
|
@ -9,58 +9,51 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Introduction-a5320326
|
||||
:END:
|
||||
Picom is the successor to Compton, a standalone compositor for Xorg. It
|
||||
provides compositing for WM that do not provide any, such as i3. I am
|
||||
currently using [[https://github.com/ibhagwan/picom][ibhagwan’s fork of compton]] which provides the ~dual-kawase~
|
||||
blur from [[https://github.com/tryone144/compton][tryone’s compton]] and rounded corners from [[https://github.com/sdhand/picom][sdhand’s compton]].
|
||||
Picom is the successor to Compton, a standalone compositor for Xorg. It provides compositing for WM that do not provide any, such as i3. I am currently using [[https://github.com/ibhagwan/picom][ibhagwan’s fork of compton]] which provides the ~dual-kawase~ blur from [[https://github.com/tryone144/compton][tryone’s compton]] and rounded corners from [[https://github.com/sdhand/picom][sdhand’s compton]].
|
||||
|
||||
* Shadows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Shadows-f4ffbb27
|
||||
:END:
|
||||
The following enables client-side shadows on windows. Note desktop windows
|
||||
(windows with ~_NET_WM_WINDOW_TYPE_DESKTOP~) never get shadow, unless
|
||||
explicitly requested using the wintypes option. I personally deactivated
|
||||
shadows because they don’t work out too well with rounded corners.
|
||||
#+BEGIN_SRC conf
|
||||
The following enables client-side shadows on windows. Note desktop windows (windows with ~_NET_WM_WINDOW_TYPE_DESKTOP~) never get shadow, unless explicitly requested using the wintypes option. I personally deactivated shadows because they don’t work out too well with rounded corners.
|
||||
#+BEGIN_SRC conf
|
||||
shadow = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
The blur radius radius for shadows is measured in pixels, and it defaults to
|
||||
12px.
|
||||
#+BEGIN_SRC conf
|
||||
The blur radius radius for shadows is measured in pixels, and it defaults to 12px.
|
||||
#+BEGIN_SRC conf
|
||||
shadow-radius = 7;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Picom can also apply some level of opacity on shadows.
|
||||
| Default value | ~0.75~ |
|
||||
| Min value | ~0.0~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
Picom can also apply some level of opacity on shadows.
|
||||
| Default value | ~0.75~ |
|
||||
| Min value | ~0.0~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
shadow-opacity = 0.85
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
The left and top offsets for shadows are expressed in pixels.
|
||||
| Default value | ~-15~ |
|
||||
#+BEGIN_SRC conf
|
||||
The left and top offsets for shadows are expressed in pixels.
|
||||
| Default value | ~-15~ |
|
||||
#+BEGIN_SRC conf
|
||||
shadow-offset-x = -5;
|
||||
shadow-offset-y = -5;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
The following values have an impact on the shadow’s RGB color.
|
||||
| Default value | ~0.0~ |
|
||||
| Min value | ~0.0~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
The following values have an impact on the shadow’s RGB color.
|
||||
| Default value | ~0.0~ |
|
||||
| Min value | ~0.0~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
shadow-red = 0.0;
|
||||
shadow-green = 0.0;
|
||||
shadow-blue = 0.0;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is possible to specify a list of conditions of windows that should have no
|
||||
shadow.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
It is possible to specify a list of conditions of windows that should have no
|
||||
shadow.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
shadow-exclude = [
|
||||
"name = 'Notification'",
|
||||
"class_g = 'Conky'",
|
||||
@ -68,226 +61,196 @@
|
||||
"class_g = 'Cairo-clock'",
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is also possible to specify an X geometry that describes the region in
|
||||
which shadows should not be painted in, such as a dock window region. For
|
||||
example,
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
It is also possible to specify an X geometry that describes the region in
|
||||
which shadows should not be painted in, such as a dock window region. For
|
||||
example,
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
# shadow-exclude-reg = "x10+0+0"
|
||||
#+END_SRC
|
||||
would make the 10 pixels at the bottom of the screen not have any shadow
|
||||
painted on.
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
#+END_SRC
|
||||
would make the 10 pixels at the bottom of the screen not have any shadow
|
||||
painted on.
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
shadow-exclude-reg = ""
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Finally, it is also possible to crop the shadow of a window fully on a
|
||||
particular Xinerama screen to the screen.
|
||||
- Default value :: ~false~
|
||||
#+BEGIN_SRC conf
|
||||
Finally, it is also possible to crop the shadow of a window fully on a
|
||||
particular Xinerama screen to the screen.
|
||||
- Default value :: ~false~
|
||||
#+BEGIN_SRC conf
|
||||
xinerama-shadow-crop = false
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Deprecated options
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS:conf: :tangle no
|
||||
:CUSTOM_ID: Shadows-Deprecated_options-da215d5a
|
||||
:END:
|
||||
Options in this subheader *will not* be exported to my configuration file.
|
||||
Options in this subheader *will not* be exported to my configuration file.
|
||||
|
||||
Thanks to this value, Picom can avoid drawing shadows on dock or panel
|
||||
windows. This option is deprecated, and users should use the ~wintypes~
|
||||
option in their config file instead.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Thanks to this value, Picom can avoid drawing shadows on dock or panel windows. This option is deprecated, and users should use the ~wintypes~ option in their config file instead.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
no-dock-shadow = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This option allows Picom not to draw on drag-and-drop windows. This option is
|
||||
deprecated, and users should use the ~wintypes~ option in their config file
|
||||
instead.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
This option allows Picom not to draw on drag-and-drop windows. This option is deprecated, and users should use the ~wintypes~ option in their config file instead.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
no-dnd-shadow = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
~shadow-ignore-shaped~ is also deprecated. It used to indicate Picom not to
|
||||
paint shadows on shaped windows. Note shaped windows here means windows
|
||||
setting their shape through X Shape extension. Those using ARGB background
|
||||
are beyond Picom’s control. Since it is deprecated, you could instead use
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
~shadow-ignore-shaped~ is also deprecated. It used to indicate Picom not to paint shadows on shaped windows. Note shaped windows here means windows setting their shape through X Shape extension. Those using ARGB background are beyond Picom’s control. Since it is deprecated, you could instead use
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
shadow-exclude = 'bounding_shaped'
|
||||
#+END_SRC
|
||||
or
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
#+END_SRC
|
||||
or
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
shadow-exclude = 'bounding_shaped && !rounded_corners'
|
||||
#+END_SRC
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
#+END_SRC
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
shadow-ignore-shaped = ""
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Rounded corners
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Rounded_corners-33bfcd20
|
||||
:END:
|
||||
A great feature added by ibhagwan’s fork of compton is the addition of rounded
|
||||
corners from sdhand’s fork, and the Kawase blur (described [[#Background_blurring-55835066][here]]) from
|
||||
tryone144’s fork. Here we can see the declaration of the corners’ radius:
|
||||
#+BEGIN_SRC conf
|
||||
A great feature added by ibhagwan’s fork of picom is the addition of rounded corners from sdhand’s fork, and the Kawase blur (described [[#Background_blurring-55835066][here]]) from tryone144’s fork. Here we can see the declaration of the corners’ radius:
|
||||
#+BEGIN_SRC conf
|
||||
corner-radius = 9.0;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is also possible to exclude some windows from getting their corners
|
||||
rounded. I personally excluded any window generated by AwesomeWM.
|
||||
#+BEGIN_SRC conf
|
||||
It is also possible to exclude some windows from getting their corners rounded. I personally excluded any window generated by AwesomeWM.
|
||||
#+BEGIN_SRC conf
|
||||
rounded-corners-exclude = [
|
||||
"_NET_WM_WINDOW_TYPE@[0]:a = '_NET_WM_WINDOW_TYPE_DOCK'"
|
||||
];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Fading
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Fading-419d8047
|
||||
:END:
|
||||
Picom has the ability to create some fading effects on windows when opening or
|
||||
closing or when the opacity changes. The following parameter toggles this
|
||||
feature on or off. However, its behavior can be changed with
|
||||
~no-fading-openclose~.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Picom has the ability to create some fading effects on windows when opening or closing or when the opacity changes. The following parameter toggles this feature on or off. However, its behavior can be changed with ~no-fading-openclose~.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
fading = true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
These values controls the opacity change between steps while fading in and
|
||||
out.
|
||||
| Default value | ~0.028~ (fade-in), ~0.03~ (fade-out) |
|
||||
| Min value | ~0.01~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
These values controls the opacity change between steps while fading in and out.
|
||||
| Default value | ~0.028~ (fade-in), ~0.03~ (fade-out) |
|
||||
| Min value | ~0.01~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
fade-in-step = 0.09;
|
||||
fade-out-step = 0.08;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This value represents the time between steps in fade steps, in milliseconds.
|
||||
| Default value | ~10~ |
|
||||
| Min value | ~1~ |
|
||||
#+BEGIN_SRC conf
|
||||
This value represents the time between steps in fade steps, in milliseconds.
|
||||
| Default value | ~10~ |
|
||||
| Min value | ~1~ |
|
||||
#+BEGIN_SRC conf
|
||||
fade-delta = 20;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is possible to exclude some windows that should not be faded with a
|
||||
specified list of conditions.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
It is possible to exclude some windows that should not be faded with a specified list of conditions.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
fade-exclude = [ "class_g = 'mpv'" ];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This option allows Picom not to create any fade on windows opening or closing.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
This option allows Picom not to create any fade on windows opening or closing.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
no-fading-openclose = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Finally, this option is a workaround for Openbox, Fluxbox and others by not
|
||||
fading destroyed ARGB windows with WM frame.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Finally, this option is a workaround for Openbox, Fluxbox and others by not fading destroyed ARGB windows with WM frame.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
no-fading-destroyed-argb = false
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Transparency and opacity
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Transparency_and_opacity-6c6b36d2
|
||||
:END:
|
||||
Picom is also able to create some opacity or transparency for windows,
|
||||
depending on their state or on some user-defined rules. For instance, the
|
||||
following value describes the opacity of inactive windows.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
Picom is also able to create some opacity or transparency for windows, depending on their state or on some user-defined rules. For instance, the following value describes the opacity of inactive windows.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
inactive-opacity = 0.6;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
On the other hand, it is possible to declare a default opacity for active
|
||||
windows.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
On the other hand, it is possible to declare a default opacity for active windows.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
active-opacity = 1;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This however describes the opacity of window titlebars and borders.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
This however describes the opacity of window titlebars and borders.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
frame-opacity = 1.0;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
~menu-opacity~ describes the opacity for dropdown menus and popup menus.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
~menu-opacity~ describes the opacity for dropdown menus and popup menus.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
# menu-opacity = 0.9;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
~inactive-opacity-override~ allows the user to let inactive opacity set by
|
||||
~-i~ override the ~_NET_WM_OPACITY_ values of windows.
|
||||
| Default value | ~true~ |
|
||||
#+BEGIN_SRC conf
|
||||
~inactive-opacity-override~ allows the user to let inactive opacity set by ~-i~ override the ~_NET_WM_OPACITY_ values of windows.
|
||||
| Default value | ~true~ |
|
||||
#+BEGIN_SRC conf
|
||||
inactive-opacity-override = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
While it is possible to alter opacity on inactive windows, it is also possible
|
||||
to dim them.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
While it is possible to alter opacity on inactive windows, it is also possible to dim them.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
# inactive-dim = 1.0
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is also possible to use a fixed inactive dim value, instead of adjusting
|
||||
according to window opacity.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
It is also possible to use a fixed inactive dim value, instead of adjusting according to window opacity.
|
||||
| Default value | ~1.0~ |
|
||||
| Min value | ~0.1~ |
|
||||
| Max value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
# inactive-dim-fixed = 1.0
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is also possible to specify a list of conditions of windows that should
|
||||
always be considered focused.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
It is also possible to specify a list of conditions of windows that should always be considered focused.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
focus-exclude = [ "class_g = 'mpv'" ];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
The user can also specify a list of opacity rules, in the format
|
||||
~PERCENT:PATTERN~, like ~50:name *= "Firefox"~. picom-trans is recommended
|
||||
over this. Note we don't make any guarantee about possible conflicts with
|
||||
other programs that set ~_NET_WM_WINDOW_OPACITY~ on frame or client windows.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
opacity-rule = [
|
||||
"85:class_g = 'Polybar'",
|
||||
# "55:class_g *?= 'Rofi'",
|
||||
];
|
||||
#+END_SRC
|
||||
The user can also specify a list of opacity rules, in the format ~PERCENT:PATTERN~, like ~50:name *= "Firefox"~ . ~picom-trans~ is recommended over this. Note we don't make any guarantee about possible conflicts with other programs that set ~_NET_WM_WINDOW_OPACITY~ on frame or client windows.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
opacity-rule = [];
|
||||
#+END_SRC
|
||||
|
||||
* Background blurring
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Background_blurring-55835066
|
||||
:END:
|
||||
The following are the parameters for background blurring, see the \*BLUR\*
|
||||
section for more information.
|
||||
#+BEGIN_SRC conf
|
||||
The following are the parameters for background blurring, see the \*BLUR\* section for more information.
|
||||
#+BEGIN_SRC conf
|
||||
blur: {
|
||||
method = "dual_kawase";
|
||||
strength = 7;
|
||||
@ -295,306 +258,249 @@
|
||||
background-frame = false;
|
||||
background-fixed = false;
|
||||
}
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This value enables or disables the blur for the background of semi-transparent
|
||||
or ARGB windows. It has bad performances though, with driver-dependent
|
||||
behavior. The name of the switch may change without prior notifications.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
This value enables or disables the blur for the background of semi-transparent or ARGB windows. It has bad performances though, with driver-dependent behavior. The name of the switch may change without prior notifications.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
blur-background = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Blur background of windows when the window frame is not opaque. If true, this
|
||||
implies the value ~true~ for ~blur-background~.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Blur background of windows when the window frame is not opaque. If true, this implies the value ~true~ for ~blur-background~.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
blur-background-frame = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
The following determines whether to use fixed blur strength rather than
|
||||
adjusting according to window opacity.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
The following determines whether to use fixed blur strength rather than adjusting according to window opacity.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
blur-background-fixed = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Specify the blur convolution kernel, with the format
|
||||
~"5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"~.
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf
|
||||
Specify the blur convolution kernel, with the format ~"5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"~.
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf
|
||||
# blur-kern = "3x3box";
|
||||
blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
It is possible to write exclude conditions for background blur.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
It is possible to write exclude conditions for background blur.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
blur-background-exclude = [
|
||||
"window_type = 'desktop'",
|
||||
"class_g = 'Polybar'",
|
||||
"class_g = 'discord-overlay'",
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
* General settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: General_settings-41398de7
|
||||
:END:
|
||||
Daemonize process. Fork to background after initialization. Causes issues
|
||||
with certain (badly-written) drivers.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
daemon = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Picom has three backends it can use: ~xrender~, ~glx~, and ~xr_glx_hybrid~.
|
||||
GLX backend is typically much faster but depends on a sane driver.
|
||||
| Default value | ~xrender~ |
|
||||
#+BEGIN_SRC conf
|
||||
Picom has three backends it can use: ~xrender~, ~glx~, and ~xr_glx_hybrid~. GLX backend is typically much faster but depends on a sane driver.
|
||||
| Default value | ~xrender~ |
|
||||
#+BEGIN_SRC conf
|
||||
backend = "glx";
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
This enables or disables VSync.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
This enables or disables VSync.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
vsync = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Enable remote control via D-Bus. See the *D-BUS API* section below for more
|
||||
details.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
dbus = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Try to detect WM windows (a non-override-redirect window with no child that
|
||||
has ~WM_STATE~) and markz them as active.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Try to detect WM windows (a non-override-redirect window with no child that has ~WM_STATE~) and markz them as active.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
mark-wmwin-focused = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
|
||||
Mark override-redirect windows that doesn't have a child window with
|
||||
~WM_STATE~ focused.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Mark override-redirect windows that doesn't have a child window with ~WM_STATE~ focused.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
mark-ovredir-focused = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Try to detect windows with rounded corners and don't consider them shaped
|
||||
windows. The accuracy is not very high, unfortunately.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Try to detect windows with rounded corners and don't consider them shaped windows. The accuracy is not very high, unfortunately.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
detect-rounded-corners = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Detect ~_NET_WM_OPACITY~ on client windows, useful for window managers not
|
||||
passing ~_NET_WM_OPACITY~ of client windows to frame windows.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Detect ~_NET_WM_OPACITY~ on client windows, useful for window managers not passing ~_NET_WM_OPACITY~ of client windows to frame windows.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
detect-client-opacity = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Specify refresh rate of the screen. If not specified or 0, picom will try
|
||||
detecting this with X RandR extension.
|
||||
| Default value | ~60~ |
|
||||
#+BEGIN_SRC conf
|
||||
refresh-rate = 60;
|
||||
#+END_SRC
|
||||
Specify refresh rate of the screen. If not specified or 0, picom will try detecting this with X RandR extension.
|
||||
| Default value | ~60~ |
|
||||
#+BEGIN_SRC conf
|
||||
refresh-rate = 120;
|
||||
#+END_SRC
|
||||
|
||||
Limit picom to repaint at most once every 1 / ~refresh_rate~ second to boost
|
||||
performance. This should not be used with
|
||||
#+BEGIN_SRC text :tangle no
|
||||
Limit picom to repaint at most once every 1 / ~refresh_rate~ second to boost performance. This should not be used with
|
||||
#+BEGIN_SRC text :tangle no
|
||||
vsync drm/opengl/opengl-oml
|
||||
#+END_SRC
|
||||
as they essentially does sw-opti's job already, unless you wish to specify a
|
||||
lower refresh rate than the actual value.
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf
|
||||
#+END_SRC
|
||||
as they essentially does sw-opti's job already, unless you wish to specify a lower refresh rate than the actual value.
|
||||
| Default value | ~""~ |
|
||||
#+BEGIN_SRC conf
|
||||
# sw-opti =;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Use EWMH ~_NET_ACTIVE_WINDOW~ to determine currently focused window, rather
|
||||
than listening to ~FocusIn~/~FocusOut~ event. Might have more accuracy,
|
||||
provided that the WM supports it.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Use EWMH ~_NET_ACTIVE_WINDOW~ to determine currently focused window, rather than listening to ~FocusIn~/~FocusOut~ event. Might have more accuracy, provided that the WM supports it.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
# use-ewmh-active-win = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Unredirect all windows if a full-screen opaque window is detected, to maximize
|
||||
performance for full-screen windows. Known to cause flickering when
|
||||
redirecting/unredirecting windows. paint-on-overlay may make the flickering
|
||||
less obvious.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows. Known to cause flickering when redirecting/unredirecting windows. paint-on-overlay may make the flickering less obvious.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
unredir-if-possible = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Delay before unredirecting the window, in milliseconds.
|
||||
| Default value | ~0~ |
|
||||
#+BEGIN_SRC conf
|
||||
Delay before unredirecting the window, in milliseconds.
|
||||
| Default value | ~0~ |
|
||||
#+BEGIN_SRC conf
|
||||
unredir-if-possible-delay = 0;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Conditions of windows that shouldn't be considered full-screen for
|
||||
unredirecting screen.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
unredir-if-possible-exclude = [];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Use ~WM_TRANSIENT_FOR~ to group windows, and consider windows in the same
|
||||
group focused at the same time.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Use ~WM_TRANSIENT_FOR~ to group windows, and consider windows in the same group focused at the same time.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
detect-transient = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Use ~WM_CLIENT_LEADER~ to group windows, and consider windows in the same
|
||||
group focused at the same time. ~WM_TRANSIENT_FOR~ has higher priority if
|
||||
detect-transient is enabled, too.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Use ~WM_CLIENT_LEADER~ to group windows, and consider windows in the same group focused at the same time. ~WM_TRANSIENT_FOR~ has higher priority if detect-transient is enabled, too.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
detect-client-leader = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Resize damaged region by a specific number of pixels. A positive value
|
||||
enlarges it while a negative one shrinks it. If the value is positive, those
|
||||
additional pixels will not be actually painted to screen, only used in blur
|
||||
calculation, and such. (Due to technical limitations, with use-damage, those
|
||||
pixels will still be incorrectly painted to screen.) Primarily used to fix the
|
||||
line corruption issues of blur, in which case you should use the blur radius
|
||||
value here (e.g. with a 3x3 kernel, you should use ~--resize-damage 1~, with a
|
||||
5x5 one you use ~--resize-damage 2~, and so on). May or may not work with
|
||||
*--glx-no-stencil*. Shrinking doesn't function correctly.
|
||||
| Default value | ~1~ |
|
||||
#+BEGIN_SRC conf
|
||||
Resize damaged region by a specific number of pixels. A positive value enlarges it while a negative one shrinks it. If the value is positive, those additional pixels will not be actually painted to screen, only used in blur calculation, and such. (Due to technical limitations, with use-damage, those pixels will still be incorrectly painted to screen.) Primarily used to fix the line corruption issues of blur, in which case you should use the blur radius value here (e.g. with a 3x3 kernel, you should use ~--resize-damage 1~, with a 5x5 one you use ~--resize-damage 2~, and so on). May or may not work with ~--glx-no-stencil~. Shrinking doesn't function correctly.
|
||||
| Default value | ~1~ |
|
||||
#+BEGIN_SRC conf
|
||||
resize-damage = 1;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Specify a list of conditions of windows that should be painted with inverted
|
||||
color. Resource-hogging, and is not well tested.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
Specify a list of conditions of windows that should be painted with inverted color. Resource-hogging, and is not well tested.
|
||||
| Default value | ~[]~ |
|
||||
#+BEGIN_SRC conf
|
||||
invert-color-include = [];
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Disable the use of damage information. This cause the whole screen to be
|
||||
redrawn everytime, instead of the part of the screen has actually changed.
|
||||
Potentially degrades the performance, but might fix some artifacts. The
|
||||
opposing option is use-damage
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Disable the use of damage information. This cause the whole screen to be redrawn everytime, instead of the part of the screen has actually changed. Potentially degrades the performance, but might fix some artifacts. The opposing option is use-damage
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
use-damage = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Use X Sync fence to sync clients' draw calls, to make sure all draw calls are
|
||||
finished before picom starts drawing. Needed on nvidia-drivers with GLX
|
||||
backend for some users.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Use X Sync fence to sync clients' draw calls, to make sure all draw calls are finished before picom starts drawing. Needed on nvidia-drivers with GLX backend for some users.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
xrender-sync-fence = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Force all windows to be painted with blending. Useful if you have a
|
||||
glx-fshader-win that could turn opaque pixels transparent.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Force all windows to be painted with blending. Useful if you have a glx-fshader-win that could turn opaque pixels transparent.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
force-win-blend = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Do not use EWMH to detect fullscreen windows. Reverts to checking if a window
|
||||
is fullscreen based only on its size and coordinates.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Do not use EWMH to detect fullscreen windows. Reverts to checking if a window is fullscreen based only on its size and coordinates.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
no-ewmh-fullscreen = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Dimming bright windows so their brightness doesn't exceed this set value.
|
||||
Brightness of a window is estimated by averaging all pixels in the window, so
|
||||
this could comes with a performance hit. Setting this to 1.0 disables this
|
||||
behaviour. Requires ~--use-damage~ to be disabled.
|
||||
| Default value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
Dimming bright windows so their brightness doesn't exceed this set value. Brightness of a window is estimated by averaging all pixels in the window, so this could comes with a performance hit. Setting this to 1.0 disables this behaviour. Requires ~--use-damage~ to be disabled.
|
||||
| Default value | ~1.0~ |
|
||||
#+BEGIN_SRC conf
|
||||
max-brightness = 1.0;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Make transparent windows clip other windows like non-transparent windows do,
|
||||
instead of blending on top of them.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Make transparent windows clip other windows like non-transparent windows do, instead of blending on top of them.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
transparent-clipping = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Set the log level. Possible values are:
|
||||
- ~trace~
|
||||
- ~debug~
|
||||
- ~info~
|
||||
- ~warn~
|
||||
- ~error~
|
||||
in increasing level of importance. Case doesn't matter. If using the "TRACE"
|
||||
log level, it's better to log into a file using ~--log-file~, since it can
|
||||
generate a huge stream of logs.
|
||||
| Default value | ~"debug"~ |
|
||||
#+BEGIN_SRC conf
|
||||
Set the log level. Possible values are:
|
||||
- ~trace~
|
||||
- ~debug~
|
||||
- ~info~
|
||||
- ~warn~
|
||||
- ~error~
|
||||
in increasing level of importance. Case doesn't matter. If using the "TRACE" log level, it's better to log into a file using ~--log-file~, since it can generate a huge stream of logs.
|
||||
| Default value | ~"debug"~ |
|
||||
#+BEGIN_SRC conf
|
||||
log-level = "warn";
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Set the log file. If ~--log-file~ is never specified, logs will be written to
|
||||
stderr. Otherwise, logs will to written to the given file, though some of the
|
||||
early logs might still be written to the stderr. When setting this option from
|
||||
the config file, it is recommended to use an absolute path.
|
||||
| Default value | ~''~ |
|
||||
#+BEGIN_SRC conf
|
||||
Set the log file. If ~--log-file~ is never specified, logs will be written to stderr. Otherwise, logs will to written to the given file, though some of the early logs might still be written to the stderr. When setting this option from the config file, it is recommended to use an absolute path.
|
||||
| Default value | ~''~ |
|
||||
#+BEGIN_SRC conf
|
||||
# log-file = '/path/to/your/log/file';
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Show all X errors (for debugging)
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Show all X errors (for debugging)
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
# show-all-xerrors = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Write process ID to a file.
|
||||
| Default value | ~''~ |
|
||||
#+BEGIN_SRC conf
|
||||
Write process ID to a file.
|
||||
| Default value | ~''~ |
|
||||
#+BEGIN_SRC conf
|
||||
# write-pid-path = '/path/to/your/log/file';
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Window type settings. ~WINDOW_TYPE~ is one of the 15 window types defined in
|
||||
EWMH standard:
|
||||
- ~"unknown"~
|
||||
- ~"desktop"~
|
||||
- ~"dock"~
|
||||
- ~"toolbar"~
|
||||
- ~"menu"~
|
||||
- ~"utility"~
|
||||
- ~"splash"~
|
||||
- ~"dialog"~
|
||||
- ~"normal"~
|
||||
- ~"dropdown_menu"~
|
||||
- ~"popup_menu"~
|
||||
- ~"tooltip"~
|
||||
- ~"notification"~
|
||||
- ~"combo"~
|
||||
- ~"dnd"~
|
||||
Following per window-type options are available:
|
||||
- fade, shadow :: Controls window-type-specific shadow and fade settings.
|
||||
- opacity :: Controls default opacity of the window type.
|
||||
- focus :: Controls whether the window of this type is to be always considered
|
||||
focused. (By default, all window types except "normal" and "dialog" has this
|
||||
on.)
|
||||
- full-shadow :: Controls whether shadow is drawn under the parts of the
|
||||
window that you normally won't be able to see. Useful when the window has
|
||||
parts of it transparent, and you want shadows in those areas.
|
||||
- redir-ignore :: Controls whether this type of windows should cause screen to
|
||||
become redirected again after been unredirected. If you have
|
||||
unredir-if-possible set, and doesn't want certain window to cause
|
||||
unnecessary screen redirection, you can set this to `true`.
|
||||
#+BEGIN_SRC conf
|
||||
Window type settings. ~WINDOW_TYPE~ is one of the 15 window types defined in EWMH standard:
|
||||
- ~"unknown"~
|
||||
- ~"desktop"~
|
||||
- ~"dock"~
|
||||
- ~"toolbar"~
|
||||
- ~"menu"~
|
||||
- ~"utility"~
|
||||
- ~"splash"~
|
||||
- ~"dialog"~
|
||||
- ~"normal"~
|
||||
- ~"dropdown_menu"~
|
||||
- ~"popup_menu"~
|
||||
- ~"tooltip"~
|
||||
- ~"notification"~
|
||||
- ~"combo"~
|
||||
- ~"dnd"~
|
||||
Following per window-type options are available:
|
||||
- fade, shadow :: Controls window-type-specific shadow and fade settings.
|
||||
- opacity :: Controls default opacity of the window type.
|
||||
- focus :: Controls whether the window of this type is to be always considered focused. (By default, all window types except "normal" and "dialog" has this on.)
|
||||
- full-shadow :: Controls whether shadow is drawn under the parts of the window that you normally won't be able to see. Useful when the window has parts of it transparent, and you want shadows in those areas.
|
||||
- redir-ignore :: Controls whether this type of windows should cause screen to become redirected again after been unredirected. If you have unredir-if-possible set, and doesn't want certain window to cause unnecessary screen redirection, you can set this to `true`.
|
||||
#+BEGIN_SRC conf
|
||||
wintypes:
|
||||
{
|
||||
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
|
||||
@ -603,33 +509,26 @@
|
||||
popup_menu = { opacity = 0.8; }
|
||||
dropdown_menu = { opacity = 0.8; }
|
||||
};
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** GLX backend-specific options
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: General_settings-GLX_backend-specific_options-43892981
|
||||
:END:
|
||||
Avoid using stencil buffer, useful if you don't have a stencil buffer. Might
|
||||
cause incorrect opacity when rendering transparent content (but never
|
||||
practically happened) and may not work with blur-background. Tests show a 15%
|
||||
performance boost. Recommended.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Avoid using stencil buffer, useful if you don't have a stencil buffer. Might cause incorrect opacity when rendering transparent content (but never practically happened) and may not work with blur-background. Tests show a 15% performance boost. Recommended.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
glx-no-stencil = true;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Avoid rebinding pixmap on window damage. Probably could improve performance
|
||||
on rapid window content changes, but is known to break things on some drivers
|
||||
(LLVMpipe, xf86-video-intel, etc.). Recommended if it works.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
Avoid rebinding pixmap on window damage. Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.). Recommended if it works.
|
||||
| Default value | ~false~ |
|
||||
#+BEGIN_SRC conf
|
||||
glx-no-rebind-pixmap = false;
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
Use specified GLSL fragment shader for rendering window contents. See
|
||||
~compton-default-fshader-win.glsl~ and
|
||||
~compton-fake-transparency-fshader-win.glsl~ in the source tree for examples.
|
||||
| Default value | ~''~ |
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
Use specified GLSL fragment shader for rendering window contents. See ~compton-default-fshader-win.glsl~ and ~compton-fake-transparency-fshader-win.glsl~ in the source tree for examples.
|
||||
| Default value | ~''~ |
|
||||
#+BEGIN_SRC conf :tangle no
|
||||
glx-fshader-win = '';
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -10,117 +10,99 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Introduction-465e99fe
|
||||
:END:
|
||||
The ~.rustfmt.toml~ file located in the ~$HOME~ directory is a global
|
||||
configuration file for Rust’s code formatters, such as ~rustfmt~. In this
|
||||
file, you can find how my Rust code is always formatted.
|
||||
The ~.rustfmt.toml~ file located in the ~$HOME~ directory is a global configuration file for Rust’s code formatters, such as ~rustfmt~. In this file, you can find how my Rust code is always formatted.
|
||||
|
||||
* General settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: General_settings-7f5cb2f6
|
||||
:END:
|
||||
First, we are using the 2018 edition of Rust.
|
||||
#+BEGIN_SRC toml
|
||||
First, we are using the 2018 edition of Rust.
|
||||
#+BEGIN_SRC toml
|
||||
edition = "2018"
|
||||
#+END_SRC
|
||||
|
||||
Put single-expression functions on a single line.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Put single-expression functions on a single line.
|
||||
#+BEGIN_SRC toml
|
||||
fn_single_line = true
|
||||
#+END_SRC
|
||||
|
||||
Format string literals where necessary.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Format string literals where necessary.
|
||||
#+BEGIN_SRC toml
|
||||
format_strings = true
|
||||
#+END_SRC
|
||||
|
||||
Maximum width of each line
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Maximum width of each line
|
||||
#+BEGIN_SRC toml
|
||||
max_width = 80
|
||||
#+END_SRC
|
||||
|
||||
Merge multiple imports into a single nested import.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Merge multiple imports into a single nested import.
|
||||
#+BEGIN_SRC toml
|
||||
merge_imports = true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Structs and Enums
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Structs_and_Enums-6a2a856d
|
||||
:END:
|
||||
The maximum length of enum variant having discriminant, that gets vertically
|
||||
aligned with others. Variants without discriminants would be ignored for the
|
||||
purpose of alignment.
|
||||
The maximum length of enum variant having discriminant, that gets vertically aligned with others. Variants without discriminants would be ignored for the purpose of alignment.
|
||||
|
||||
Note that this is not how much whitespace is inserted, but instead the longest
|
||||
variant name that doesn't get ignored when aligning.
|
||||
#+BEGIN_SRC toml
|
||||
Note that this is not how much whitespace is inserted, but instead the longest variant name that doesn't get ignored when aligning.
|
||||
#+BEGIN_SRC toml
|
||||
enum_discrim_align_threshold = 20
|
||||
#+END_SRC
|
||||
|
||||
The maximum diff of width between struct fields to be aligned with each other.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
The maximum diff of width between struct fields to be aligned with each other.
|
||||
#+BEGIN_SRC toml
|
||||
struct_field_align_threshold = 20
|
||||
#+END_SRC
|
||||
|
||||
Reorder impl items. ~type~ and ~const~ are put first, then macros and methods.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Reorder impl items. ~type~ and ~const~ are put first, then macros and methods.
|
||||
#+BEGIN_SRC toml
|
||||
reorder_impl_items = true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Comments
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Comments-b1904bb0
|
||||
:END:
|
||||
Convert ~/* */~ comments to ~//~ comments where possible.
|
||||
#+BEGIN_SRC toml
|
||||
Convert ~/* */~ comments to ~//~ comments where possible.
|
||||
#+BEGIN_SRC toml
|
||||
normalize_comments = true
|
||||
#+END_SRC
|
||||
|
||||
Break comments to fit on the line.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Break comments to fit on the line.
|
||||
#+BEGIN_SRC toml
|
||||
wrap_comments = true
|
||||
#+END_SRC
|
||||
|
||||
Report ~FIXME~ items in comments.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Report ~FIXME~ items in comments.
|
||||
#+BEGIN_SRC toml
|
||||
report_fixme = "Always"
|
||||
#+END_SRC
|
||||
|
||||
Report ~TODO~ items in comments.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Report ~TODO~ items in comments.
|
||||
#+BEGIN_SRC toml
|
||||
todo = "Always"
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Documentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Documentation-0c7981c7
|
||||
:END:
|
||||
Format code snippet included in doc comments.
|
||||
#+BEGIN_SRC toml
|
||||
Format code snippet included in doc comments.
|
||||
#+BEGIN_SRC toml
|
||||
format_code_in_doc_comments = true
|
||||
#+END_SRC
|
||||
|
||||
Convert ~#![doc]~ and ~#[doc]~ attributes to ~//!~ and ~///~ doc comments.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Convert ~#![doc]~ and ~#[doc]~ attributes to ~//!~ and ~///~ doc comments.
|
||||
#+BEGIN_SRC toml
|
||||
normalize_doc_attributes = true
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Whitespace
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Whitespace-e8792b44
|
||||
:END:
|
||||
|
||||
Use tab characters for indentation, spaces for alignment.
|
||||
#+BEGIN_SRC toml
|
||||
Use tab characters for indentation, spaces for alignment.
|
||||
#+BEGIN_SRC toml
|
||||
hard_tabs = false
|
||||
#+END_SRC
|
||||
|
||||
Number of spaces per tab.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
Number of spaces per tab.
|
||||
#+BEGIN_SRC toml
|
||||
tab_spaces = 4
|
||||
#+END_SRC
|
||||
|
||||
I want newlines to always be Unix style.
|
||||
#+BEGIN_SRC toml
|
||||
#+END_SRC
|
||||
I want newlines to always be Unix style.
|
||||
#+BEGIN_SRC toml
|
||||
newline_style = "Unix"
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
@ -10,396 +10,334 @@
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Presentation-0b37c6c0
|
||||
:END:
|
||||
I don’t really use tmux often, but I certainly do like a nice presentation and
|
||||
useful features, hence this configuration. This config file is inspired by
|
||||
gpakosz’s tmux configuration repo you can find [[https://github.com/gpakosz/.tmux][here]].
|
||||
I don’t really use tmux often, but I certainly do like a nice presentation and useful features, hence this configuration. This config file is inspired by gpakosz’s tmux configuration repo you can find [[https://github.com/gpakosz/.tmux][here]].
|
||||
|
||||
* Windows and pane creation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Windows_and_pane_creation-66275518
|
||||
:END:
|
||||
Whether if a new *window* will retain the current path. Possible values are:
|
||||
- true
|
||||
- false (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_window_retain_current_path=true
|
||||
#+END_SRC
|
||||
|
||||
Whether if a new *pane* should retain the current path. Possible values are:
|
||||
- true (default)
|
||||
- false
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_window_retain_current_path=true
|
||||
#+END_SRC
|
||||
|
||||
Whether or not tmux should attempt to reconnect to the current ssh session.
|
||||
This is still experimental. Possible values are:
|
||||
- true
|
||||
- false (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_pane_reconnect_ssh=true
|
||||
#+END_SRC
|
||||
|
||||
Whether tmux should prompt for new session name when creating a new one.
|
||||
Possible values are:
|
||||
- true
|
||||
- false (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_session_prompt=false
|
||||
#+END_SRC
|
||||
Whether if a new *window* will retain the current path. Possible values are:
|
||||
- ~true~
|
||||
- ~false~ (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_window_retain_current_path=true
|
||||
#+END_SRC
|
||||
Whether if a new *pane* should retain the current path. Possible values are:
|
||||
- ~true~ (default)
|
||||
- ~false~
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_window_retain_current_path=true
|
||||
#+END_SRC
|
||||
Whether or not tmux should attempt to reconnect to the current ssh session. This is still experimental. Possible values are:
|
||||
- ~true~
|
||||
- ~false~ (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_pane_reconnect_ssh=true
|
||||
#+END_SRC
|
||||
Whether tmux should prompt for new session name when creating a new one. Possible values are:
|
||||
- ~true~
|
||||
- ~false~ (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_new_session_prompt=false
|
||||
#+END_SRC
|
||||
|
||||
* Display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Display-d5ae1908
|
||||
:END:
|
||||
Whether to activate RGB 24-bit color support (only available in tmux >= 2.2).
|
||||
Possible values are:
|
||||
- true
|
||||
- false (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_24b_colour=false
|
||||
#+END_SRC
|
||||
|
||||
These variables are for chosing the window style. I use the default one.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Whether to activate RGB 24-bit color support (only available in tmux >= 2.2). Possible values are:
|
||||
- ~true~
|
||||
- ~false~ (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_24b_colour=false
|
||||
#+END_SRC
|
||||
These variables are for chosing the window style. I use the default one.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_fg='default'
|
||||
tmux_conf_theme_window_bg='default'
|
||||
#+END_SRC
|
||||
|
||||
Whether the focused pane should be highlighted (only available in tmux >=
|
||||
2.1). Possible values are:
|
||||
- true
|
||||
- false (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Whether the focused pane should be highlighted (only available in tmux >= 2.1). Possible values are:
|
||||
- ~true~
|
||||
- ~false~ (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_highlight_focused_pane=false
|
||||
#+END_SRC
|
||||
|
||||
Set the terminal title. Built-in variables are:
|
||||
- =#{circled_window_index}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the terminal title. Built-in variables are:
|
||||
- =#{circled_window_index}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_terminal_title='#h ❐ #S ● #I #W'
|
||||
#+END_SRC
|
||||
|
||||
These variables set the left/right separators between sections. With the
|
||||
current values, you don’t need to install Powerline, but only fonts patched
|
||||
with Powerline symbols or the standalone PowerlineSymbols.otf font.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
These variables set the left/right separators between sections. With the current values, you don’t need to install Powerline, but only fonts patched with Powerline symbols or the standalone PowerlineSymbols.otf font.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_left_separator_main='\uE0B0'
|
||||
tmux_conf_theme_left_separator_sub='\uE0B1'
|
||||
tmux_conf_theme_right_separator_main='\uE0B2'
|
||||
tmux_conf_theme_right_separator_sub='\uE0B3'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Colors and style
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Display-Colors_and_style-0994a014
|
||||
:END:
|
||||
Colors displayed in tmux can be chosen thanks to the following variables. Any
|
||||
color should be formatted as a hexadecimal RGB value preceded by a pound sign
|
||||
=#= (e.g. =#00afff= for light blue) or =default= to let our terminal set it
|
||||
for us.
|
||||
Colors displayed in tmux can be chosen thanks to the following variables. Any color should be formatted as a hexadecimal RGB value preceded by a pound sign =#= (e.g. =#00afff= for light blue) or =default= to let our terminal set it for us.
|
||||
|
||||
Choose the style of the pane borders. Possible values are:
|
||||
- thin (default)
|
||||
- fat
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_pane_border_style=thin
|
||||
#+END_SRC
|
||||
|
||||
Declare what the colors of the focused pane should be. The first variable
|
||||
specifies the foreground color, the other the background color.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Choose the style of the pane borders. Possible values are:
|
||||
- ~thin~ (default)
|
||||
- ~fat~
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_pane_border_style=thin
|
||||
#+END_SRC
|
||||
Declare what the colors of the focused pane should be. The first variable specifies the foreground color, the other the background color.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_focused_pane_fg='default'
|
||||
tmux_conf_theme_focused_pane_bg='#0087d7'
|
||||
#+END_SRC
|
||||
|
||||
Here you can set the colors of the pane borders.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Here you can set the colors of the pane borders.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_pane_border='#444444'
|
||||
tmux_conf_theme_pane_active_border='#00afff'
|
||||
#+END_SRC
|
||||
|
||||
With these variables, you can set the colors for the pane indicators.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
With these variables, you can set the colors for the pane indicators.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_pane_indicator='#00afff'
|
||||
tmux_conf_theme_pane_active_indicator='#00afff'
|
||||
#+END_SRC
|
||||
|
||||
These variables set the colors and the style of the status line.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
These variables set the colors and the style of the status line.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_message_fg='#000000'
|
||||
tmux_conf_theme_message_bg='#ffff00'
|
||||
tmux_conf_theme_message_attr='bold'
|
||||
#+END_SRC
|
||||
|
||||
Same as above for the status line command style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Same as above for the status line command style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_message_command_fg='#ffff00'
|
||||
tmux_conf_theme_message_command_bg='#000000'
|
||||
tmux_conf_theme_message_command_attr='bold'
|
||||
#+END_SRC
|
||||
|
||||
These variables set the style of the window modes.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
These variables set the style of the window modes.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_mode_fg='#000000'
|
||||
tmux_conf_theme_mode_bg='#ffff00'
|
||||
tmux_conf_theme_mode_attr='bold'
|
||||
#+END_SRC
|
||||
|
||||
Set the style of the status line.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the style of the status line.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_status_fg='#8a8a8a'
|
||||
tmux_conf_theme_status_bg='#080808'
|
||||
tmux_conf_theme_status_attr='none'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
** Window status bar
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Display-Window_status_bar-dff37ae7
|
||||
:END:
|
||||
The following variables are to set the window’s status style and format.
|
||||
The following variables are to set the window’s status style and format.
|
||||
|
||||
Sets the colors and style of the window status.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Sets the colors and style of the window status.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_fg='#8a8a8a'
|
||||
tmux_conf_theme_window_status_bg='#080808'
|
||||
tmux_conf_theme_window_status_attr='none'
|
||||
#+END_SRC
|
||||
|
||||
Sets the format of the window status. Built-in variables are:
|
||||
- =#{circled_window_index}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_format='#I #W'
|
||||
#+END_SRC
|
||||
|
||||
Sets the colors and style of the current window status.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the format of the window status. Built-in variables are:
|
||||
- =#{circled_window_index}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_format='#I #W'
|
||||
#+END_SRC
|
||||
Sets the colors and style of the current window status.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_current_fg='#000000'
|
||||
tmux_conf_theme_window_status_current_bg='#00afff'
|
||||
tmux_conf_theme_window_status_current_attr='bold'
|
||||
#+END_SRC
|
||||
|
||||
Sets the format of the currentwindow status. Built-in variables are:
|
||||
- =#{circled_window_index}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the format of the currentwindow status. Built-in variables are:
|
||||
- =#{circled_window_index}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_current_format='#I #W'
|
||||
#+END_SRC
|
||||
|
||||
Sets the window activity status style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the window activity status style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_activity_fg='default'
|
||||
tmux_conf_theme_window_status_activity_bg='default'
|
||||
tmux_conf_theme_window_status_activity_attr='underscore'
|
||||
#+END_SRC
|
||||
|
||||
Sets the window bell status style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the window bell status style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_bell_fg='#ffff00'
|
||||
tmux_conf_theme_window_status_bell_bg='default'
|
||||
tmux_conf_theme_window_status_bell_attr='blink,bold'
|
||||
#+END_SRC
|
||||
|
||||
Sets the window last status style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the window last status style.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_window_status_last_fg='#00afff'
|
||||
tmux_conf_theme_window_status_last_bg='default'
|
||||
tmux_conf_theme_window_status_last_attr='none'
|
||||
#+END_SRC
|
||||
|
||||
Sets the left and right content of the status bar of tmux. Sections should be
|
||||
separated with =|=, subsections with =,=. The built-in values are:
|
||||
- =#{battery_bar}=
|
||||
- =#{battery_hbar}=
|
||||
- =#{battery_percentage}=
|
||||
- =#{battery_status}=
|
||||
- =#{battery_vbar}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{hostname}=
|
||||
- =#{loadavg}=
|
||||
- =#{pairing}=
|
||||
- =#{prefix}=
|
||||
- =#{root}=
|
||||
- =#{synchronized}=
|
||||
- =#{uptime_y}=
|
||||
- =#{uptime_d}= (modulo 365 when =#{uptime_y}= is used)
|
||||
- =#{uptime_h}=
|
||||
- =#{uptime_m}=
|
||||
- =#{uptime_s}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the left and right content of the status bar of tmux. Sections should be separated with =|=, subsections with =,=. The built-in values are:
|
||||
- =#{battery_bar}=
|
||||
- =#{battery_hbar}=
|
||||
- =#{battery_percentage}=
|
||||
- =#{battery_status}=
|
||||
- =#{battery_vbar}=
|
||||
- =#{circled_session_name}=
|
||||
- =#{hostname_ssh}=
|
||||
- =#{hostname}=
|
||||
- =#{loadavg}=
|
||||
- =#{pairing}=
|
||||
- =#{prefix}=
|
||||
- =#{root}=
|
||||
- =#{synchronized}=
|
||||
- =#{uptime_y}=
|
||||
- =#{uptime_d}= (modulo 365 when =#{uptime_y}= is used)
|
||||
- =#{uptime_h}=
|
||||
- =#{uptime_m}=
|
||||
- =#{uptime_s}=
|
||||
- =#{username}=
|
||||
- =#{username_ssh}=
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_status_left=' ❐ #S | ↑#{?uptime_y, #{uptime_y}y,}#{?uptime_d, #{uptime_d}d,}#{?uptime_h, #{uptime_h}h,}#{?uptime_m, #{uptime_m}m,} '
|
||||
tmux_conf_theme_status_right='#{prefix}#{pairing}#{synchronized} #{?battery_status, #{battery_status},}#{?battery_bar, #{battery_bar},}#{?battery_percentage, #{battery_percentage},} , %R , %d %b | #{username}#{root} | #{hostname} '
|
||||
#+END_SRC
|
||||
|
||||
Sets the left status style and colors.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the left status style and colors.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_status_left_fg='#000000,#e4e4e4,#e4e4e4'
|
||||
tmux_conf_theme_status_left_bg='#ffff00,#ff00af,#00afff'
|
||||
tmux_conf_theme_status_left_attr='bold,none,none'
|
||||
#+END_SRC
|
||||
|
||||
Sets the right status style and colors.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Sets the right status style and colors.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_status_right_fg='#8a8a8a,#e4e4e4,#000000'
|
||||
tmux_conf_theme_status_right_bg='#080808,#d70000,#e4e4e4'
|
||||
tmux_conf_theme_status_right_attr='none,none,bold'
|
||||
#+END_SRC
|
||||
|
||||
Set the pairing indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the pairing indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_pairing='👓 ' # U+1F453
|
||||
tmux_conf_theme_pairing_fg='none'
|
||||
tmux_conf_theme_pairing_bg='none'
|
||||
tmux_conf_theme_pairing_attr='none'
|
||||
#+END_SRC
|
||||
|
||||
Set the pairing indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the pairing indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
# prefix indicator
|
||||
tmux_conf_theme_prefix='⌨ ' # U+2328
|
||||
tmux_conf_theme_prefix_fg='none'
|
||||
tmux_conf_theme_prefix_bg='none'
|
||||
tmux_conf_theme_prefix_attr='none'
|
||||
#+END_SRC
|
||||
|
||||
Set the root indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the root indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_root='!'
|
||||
tmux_conf_theme_root_fg='none'
|
||||
tmux_conf_theme_root_bg='none'
|
||||
tmux_conf_theme_root_attr='bold,blink'
|
||||
#+END_SRC
|
||||
|
||||
Set the synchronized indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the synchronized indicator, its style and its attribute.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_synchronized='🔒' # U+1F512
|
||||
tmux_conf_theme_synchronized_fg='none'
|
||||
tmux_conf_theme_synchronized_bg='none'
|
||||
tmux_conf_theme_synchronized_attr='none'
|
||||
#+END_SRC
|
||||
|
||||
Set the battery bar symbols.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the battery bar symbols.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_battery_bar_symbol_full='◼'
|
||||
tmux_conf_battery_bar_symbol_empty='◻'
|
||||
#+END_SRC
|
||||
|
||||
Set the battery bar length in terms of amount of symbols. Possible values
|
||||
are:
|
||||
- =auto=
|
||||
- an integer number, e.g. 5
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the battery bar length in terms of amount of symbols. Possible values are:
|
||||
- =auto=
|
||||
- an integer number, e.g. 5
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_battery_bar_length='auto'
|
||||
#+END_SRC
|
||||
|
||||
Set the battery bar palette. Possible values are:
|
||||
- =gradient= (default)
|
||||
- =heat=
|
||||
- =color_full_fg,color_empty_fg,color_bg= with each being an hexadecimal RGB
|
||||
value preceded by a pound symbol =#=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the battery bar palette. Possible values are:
|
||||
- =gradient= (default)
|
||||
- =heat=
|
||||
- =color_full_fg,color_empty_fg,color_bg= with each being an hexadecimal RGB value preceded by a pound symbol =#=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_battery_bar_palette='gradient'
|
||||
#tmux_conf_battery_bar_palette='#d70000,#e4e4e4,#000000'
|
||||
#+END_SRC
|
||||
|
||||
Set the hbar palette. Possible values are:
|
||||
- =gradient= (default)
|
||||
- =heat=
|
||||
- =color_full_fg,color_empty_fg,color_bg= with each being an hexadecimal RGB
|
||||
value preceded by a pound symbol =#=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the hbar palette. Possible values are:
|
||||
- =gradient= (default)
|
||||
- =heat=
|
||||
- =color_full_fg,color_empty_fg,color_bg= with each being an hexadecimal RGB value preceded by a pound symbol =#=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_battery_hbar_palette='gradient'
|
||||
#+END_SRC
|
||||
|
||||
Set the vbar palette. Possible values are:
|
||||
- =gradient= (default)
|
||||
- =heat=
|
||||
- =color_full_fg,color_empty_fg,color_bg= with each being an hexadecimal RGB
|
||||
value preceded by a pound symbol =#=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the vbar palette. Possible values are:
|
||||
- =gradient= (default)
|
||||
- =heat=
|
||||
- =color_full_fg,color_empty_fg,color_bg= with each being an hexadecimal RGB value preceded by a pound symbol =#=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_battery_vbar_palette='gradient'
|
||||
#+END_SRC
|
||||
|
||||
Set symbols used to indicate whether the battery is charging or discharging.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set symbols used to indicate whether the battery is charging or discharging.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_battery_status_charging='⚡ ' # U+26A1
|
||||
tmux_conf_battery_status_discharging='🔋 ' # U+1F50B
|
||||
# tmux_conf_battery_status_charging='↑' # U+2191
|
||||
# tmux_conf_battery_status_discharging='↓' # U+2193
|
||||
#tmux_conf_battery_status_charging='🔌 ' # U+1F50C
|
||||
#+END_SRC
|
||||
|
||||
Set the clock style. If it is displayed on the right side of the status bar,
|
||||
it might be better to use =%I:%M %p= rather than =%R= in
|
||||
=tmux_conf_theme_status_right=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Set the clock style. If it is displayed on the right side of the status bar, it might be better to use =%I:%M %p= rather than =%R= in =tmux_conf_theme_status_right=.
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_theme_clock_colour='#00afff'
|
||||
tmux_conf_theme_clock_style='24'
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* Clipboard
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: Clipboard-66d0d03a
|
||||
:END:
|
||||
Whether if in copy mode, copying the selection also copies to the OS
|
||||
clipboard. Possible values are:
|
||||
- true
|
||||
- false (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
Whether if in copy mode, copying the selection also copies to the OS clipboard. Possible values are:
|
||||
- ~true~
|
||||
- ~false~ (default)
|
||||
#+BEGIN_SRC conf-unix
|
||||
tmux_conf_copy_to_os_clipboard=false
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
||||
* User customizations
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: User_customizations-c913b5d7
|
||||
:END:
|
||||
Here we can override or undo some setting from settings from tmux. First, we
|
||||
can increase the history size.
|
||||
#+BEGIN_SRC conf-unix
|
||||
Here we can override or undo some setting from settings from tmux. First, we can increase the history size.
|
||||
#+BEGIN_SRC conf-unix
|
||||
set -g history-limit 10000
|
||||
#+END_SRC
|
||||
|
||||
We can also start with mouse mode enabled. But I don’t.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
We can also start with mouse mode enabled. But I don’t.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#set -g mouse on
|
||||
#+END_SRC
|
||||
|
||||
Whether or not Vi mode should be enabled. But really, we should rather export
|
||||
the =VISUAL= or =EDITOR= environment variables, see the tmux manual. Although
|
||||
I don’t, as said in my dotfish, I prefer to use Emacs.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Whether or not Vi mode should be enabled. But really, we should rather export the =VISUAL= or =EDITOR= environment variables, see the tmux manual. Although I don’t, as said in my dotfish, I prefer to use Emacs.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#set -g status-keys vi
|
||||
#set -g mode-keys vi
|
||||
#+END_SRC
|
||||
|
||||
Replace =C-b= by =C-a= instead of using both prefixes. I personally prefer to
|
||||
just use =C-b=, hence why the lines are commented.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Replace =C-b= by =C-a= instead of using both prefixes. I personally prefer to just use =C-b=, hence why the lines are commented.
|
||||
#+BEGIN_SRC conf-unix
|
||||
# set -gu prefix2
|
||||
# unbind C-a
|
||||
# unbind C-b
|
||||
# set -g prefix C-a
|
||||
# bind C-a send-prefix
|
||||
#+END_SRC
|
||||
|
||||
Move the status line to the top.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#+END_SRC
|
||||
Move the status line to the top.
|
||||
#+BEGIN_SRC conf-unix
|
||||
#set -g status-position top
|
||||
#+END_SRC
|
||||
#+END_SRC
|
||||
|
Loading…
Reference in New Issue
Block a user