Updated headings’ custom ID
This commit is contained in:
parent
ef67fa6e25
commit
d6f688d985
@ -9,11 +9,10 @@
|
||||
#+PROPERTY: header-args:lua :tangle ~/.config/awesome/rc.lua :exports code :noweb yes
|
||||
#+STARTUP: content
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fd4262b7-b9e1-49c8-83fd-02207a6388c0
|
||||
:CUSTOM_ID: Table_of_Contents-1d688dc5
|
||||
:END:
|
||||
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#loading-libraries][Loading libraries]]
|
||||
- [[#error-handling][Error handling]]
|
||||
@ -69,7 +68,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a4b01b3e-dc01-489d-9abc-f2f7f25978c4
|
||||
:CUSTOM_ID: Introduction-4c41360e
|
||||
:END:
|
||||
From the Arch Wiki: awesome is a highly configurable, next generation
|
||||
framework window manager for Xorg. It is very fast and extensible. It is
|
||||
@ -88,7 +87,7 @@
|
||||
|
||||
* Loading libraries
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-bbe91e08-98a8-4ef3-acfb-def01ba1fb4d
|
||||
:CUSTOM_ID: Loading_libraries-4df76999
|
||||
:END:
|
||||
First of all, some initialization is needed, and this initialization is about
|
||||
math randomness. So, let’s initialize the ~random~ method of the ~math~
|
||||
@ -159,7 +158,7 @@
|
||||
|
||||
* Error handling
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6c9ab69b-433d-4c99-92a6-0cdc84e7d23f
|
||||
:CUSTOM_ID: Error_handling-f6a6668f
|
||||
:END:
|
||||
This code checks if Awesome encountered an error during startup and fell back
|
||||
to another config. This code will only ever execute for the fallback config.
|
||||
@ -190,11 +189,11 @@
|
||||
|
||||
* Variable definitions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-85fcc156-5baf-4c8c-b771-7d7ae0466518
|
||||
:CUSTOM_ID: Variable_definitions-06b2bcbf
|
||||
:END:
|
||||
** Themes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b2f0f248-68ba-4bdd-a63d-98ee640b071c
|
||||
:CUSTOM_ID: Variable_definitions-Themes-591886b4
|
||||
:END:
|
||||
With Awesome, it is possible to load or write custom themes in order to give
|
||||
Awesome a special look that fits the user. I used to load the default theme
|
||||
@ -203,9 +202,9 @@
|
||||
|
||||
*** Creating my own theme (WIP, not yet used)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-45318187-d57c-4f40-a8c6-fad9d90333eb
|
||||
:HEADER-ARGS:lua: :tangle ~/.config/awesome/theme/theme.lua :exports code
|
||||
:HEADER-ARGS:emacs-lisp: :exports none :cache yes
|
||||
:CUSTOM_ID: Variable_definitions-Themes-Creating_my_own_theme_(WIP,_not_yet_used)-6b2dd694
|
||||
:END:
|
||||
Here I will create my own theme, which will be exported to
|
||||
=~/.config/awesome/theme/theme.lua=. It is based on my former Xresources
|
||||
@ -220,7 +219,7 @@
|
||||
|
||||
**** Loading assets
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-34db58ad-011d-4ebb-892a-6f481ba460aa
|
||||
:CUSTOM_ID: Variable_definitions-Themes-Creating_my_own_theme_(WIP,_not_yet_used)-Loading_assets-aacbcb76
|
||||
:END:
|
||||
So first off, let’s load our libraries or anything I might need to import.
|
||||
First, let's import the ~theme_assets~ module of ~beautiful~, a collection
|
||||
@ -265,7 +264,7 @@
|
||||
|
||||
**** Inherit the default theme
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-bcb7fef1-009d-418d-8903-9196881da791
|
||||
:CUSTOM_ID: Variable_definitions-Themes-Creating_my_own_theme_(WIP,_not_yet_used)-Inherit_the_default_theme-7ab9fbf2
|
||||
:END:
|
||||
Now that I imported what I need, I can get a default theme which I will
|
||||
later modify:
|
||||
@ -275,7 +274,7 @@
|
||||
|
||||
**** Loading default fonts and colors
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f95c53b3-42fc-410b-b836-482b10075be3
|
||||
:CUSTOM_ID: Variable_definitions-Themes-Creating_my_own_theme_(WIP,_not_yet_used)-Loading_default_fonts_and_colors-2c3cd836
|
||||
:END:
|
||||
With the default theme loaded, let's modify it! The theme’s font will be
|
||||
the same as the one I use for st: Source Code Pro for Powerline
|
||||
@ -285,7 +284,7 @@
|
||||
|
||||
*** Loading the theme
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-27548575-a623-4478-8406-ff23f9d1dce4
|
||||
:CUSTOM_ID: Variable_definitions-Themes-Loading_the_theme-2f28973c
|
||||
:END:
|
||||
Finally, let’s load our theme.
|
||||
#+BEGIN_SRC lua
|
||||
@ -298,7 +297,7 @@
|
||||
|
||||
** Default terminal and text editor
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a57e91b3-fd2a-4fc4-ac2c-2c8362882163
|
||||
:CUSTOM_ID: Variable_definitions-Default_terminal_and_text_editor-44b84e20
|
||||
:END:
|
||||
The two following variables are set so that I don’t need to go over my whole
|
||||
config file in order to modify which terminal or text editor I use, not that
|
||||
@ -310,7 +309,7 @@
|
||||
|
||||
** Keys
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d615bb11-b35d-4b7b-af6c-1f8e2fa4c647
|
||||
:CUSTOM_ID: Variable_definitions-Keys-b8def4ac
|
||||
:END:
|
||||
The following declares the default Modkey. Usually, ~Mod4~ is the Super key,
|
||||
situated between the Ctrl key and the Alt key with a logo (usually Windows’).
|
||||
@ -327,7 +326,7 @@
|
||||
|
||||
** Wallpapers directory
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-027a8758-fa96-473f-8ad3-44e07a5e7f4b
|
||||
:CUSTOM_ID: Variable_definitions-Wallpapers_directory-23b54f4f
|
||||
:END:
|
||||
This variable is a variable I personally set for a function described below
|
||||
in order to have a variable pointing to my wallpaper directory.
|
||||
@ -337,15 +336,15 @@
|
||||
|
||||
* Custom functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7f60dc78-b63b-4523-9c01-331aa78720f2
|
||||
:CUSTOM_ID: Custom_functions-ed54dbe2
|
||||
:END:
|
||||
** Wallpaper-related functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f961557b-1db6-4acd-90dc-0666316bebdb
|
||||
:CUSTOM_ID: Custom_functions-Wallpaper-related_functions-5912f7dd
|
||||
:END:
|
||||
*** Set a random wallpaper
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9983ae6b-e372-41b7-8cce-08f62781fa81
|
||||
:CUSTOM_ID: Custom_functions-Wallpaper-related_functions-Set_a_random_wallpaper-104bbeec
|
||||
:END:
|
||||
The following function allows the user to get the list of available
|
||||
wallpapers I have in my wallpapers directory. This depends on the variable
|
||||
@ -380,7 +379,7 @@
|
||||
|
||||
*** Restore previous wallpaper
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-39816309-d36d-4fb1-9c76-942a85b7407b
|
||||
:CUSTOM_ID: Custom_functions-Wallpaper-related_functions-Restore_previous_wallpaper-8b5bc08c
|
||||
:END:
|
||||
I also wrote the following function that will restore the previously set
|
||||
wallpaper:
|
||||
@ -394,7 +393,7 @@
|
||||
|
||||
** Layout manipulation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-08050731-281d-4ab8-902e-bcd2e3b3d452
|
||||
:CUSTOM_ID: Custom_functions-Layout_manipulation-6bc7db06
|
||||
:END:
|
||||
The following function is used by a shortcut described below in
|
||||
[[#h-521b02ca-0ad3-44e8-8d5b-1e75401490da]].
|
||||
@ -409,7 +408,7 @@
|
||||
|
||||
** Clients manipulation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-37850b12-d82e-4657-b13e-42cc1d4fc2dd
|
||||
:CUSTOM_ID: Custom_functions-Clients_manipulation-7e958fed
|
||||
:END:
|
||||
#+BEGIN_SRC lua
|
||||
local function restore_minimized_clients()
|
||||
@ -453,7 +452,7 @@
|
||||
|
||||
** Tag manipulation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8d449633-cba8-43c3-9000-25d8fbe9204e
|
||||
:CUSTOM_ID: Custom_functions-Tag_manipulation-5fc67669
|
||||
:END:
|
||||
#+BEGIN_SRC lua
|
||||
local function view_tag_n(i)
|
||||
@ -499,7 +498,7 @@
|
||||
|
||||
** Awesome prompt
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e2eb6c6f-1efb-451e-90d1-cc6dc217498b
|
||||
:CUSTOM_ID: Custom_functions-Awesome_prompt-de4fde50
|
||||
:END:
|
||||
#+BEGIN_SRC lua
|
||||
local function invoke_lua_execute_prompt()
|
||||
@ -514,7 +513,7 @@
|
||||
|
||||
* Layouts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-97ec07e5-68de-4c7e-bdf2-84255c09b552
|
||||
:CUSTOM_ID: Layouts-be55a7fd
|
||||
:END:
|
||||
The following is a list of available windows layouts. I only enable some of
|
||||
them, and their order in the table is their order in Awesome.
|
||||
@ -571,7 +570,7 @@
|
||||
|
||||
* Top bar
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cc08d2b1-ac99-4174-9af0-8bdf1f8a3491
|
||||
:CUSTOM_ID: Top_bar-d3117294
|
||||
:END:
|
||||
The top bar in Awesome is declared thanks to a ~wibar~ widget fro the ~awful~
|
||||
library. It is comprised of several buttons and widgets that will be declared
|
||||
@ -579,7 +578,7 @@
|
||||
|
||||
** Menus
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1ac72dd7-b8ea-45e6-b220-4462783eb87d
|
||||
:CUSTOM_ID: Top_bar-Menus-cf468ca8
|
||||
:END:
|
||||
#+NAME: make-menu
|
||||
#+BEGIN_SRC emacs-lisp :var menu=table-awesome-menu
|
||||
@ -648,7 +647,7 @@
|
||||
|
||||
** Other widgets
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-303c5e0d-6afa-45fe-91aa-e0c43e48040d
|
||||
:CUSTOM_ID: Top_bar-Other_widgets-0b255378
|
||||
:END:
|
||||
Let’s declare the keyboard map indicator and switcher for the top bar:
|
||||
#+BEGIN_SRC lua
|
||||
@ -662,7 +661,7 @@
|
||||
|
||||
** Tag list
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2113b6d4-9160-4d7f-a00e-fcae82c032f1
|
||||
:CUSTOM_ID: Top_bar-Tag_list-d43dbb62
|
||||
:END:
|
||||
In order to create the taglist (an equivalent to workspaces, but better), we
|
||||
need to create first a local variable that will hold the widget. It will be
|
||||
@ -746,7 +745,7 @@
|
||||
|
||||
** Tasks list
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b27681ce-499f-49da-b6b9-03443d479626
|
||||
:CUSTOM_ID: Top_bar-Tasks_list-fb7c9b20
|
||||
:END:
|
||||
Similarly to the tag list, the task list can display some special behavior
|
||||
depending on the clicks it receives. These clicks are set like so:
|
||||
@ -814,11 +813,11 @@
|
||||
|
||||
* Theme and display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ffa1d827-89a4-4699-b8a4-830d4bdbc5fe
|
||||
:CUSTOM_ID: Theme_and_display-6f94bad4
|
||||
:END:
|
||||
** Screen update
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d2d98621-0450-4038-8754-8aae999b1c9d
|
||||
:CUSTOM_ID: Theme_and_display-Screen_update-e162a27a
|
||||
:END:
|
||||
When a screen’s geometry changes (e.g. when a different resolution is
|
||||
applied), the signal ~property::geometry~ is sent. When this is the case, the
|
||||
@ -949,7 +948,7 @@
|
||||
|
||||
* Mouse bindings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8932afa5-64fe-4549-ac57-ef698dcb7e6c
|
||||
:CUSTOM_ID: Mouse_bindings-eb4a69a8
|
||||
:END:
|
||||
It is possible with Awesome to bind some shortcuts to mouse events when the
|
||||
mouse is above Awesome itself (not above some client). Only one is set: the
|
||||
@ -992,7 +991,7 @@
|
||||
|
||||
* Keybindings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c44e17f7-ef46-4ec1-bd26-ff6bbcd02c65
|
||||
:CUSTOM_ID: Keybindings-a4e415b3
|
||||
:END:
|
||||
Keybindings allow the user to execute some Lua code all across Awesome. They
|
||||
all bear at least a list of modifier keys, the actual key to be pressed, the
|
||||
@ -1151,7 +1150,7 @@
|
||||
|
||||
** Applications
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-58cc4798-5686-41bb-8c1a-f9e15368255a
|
||||
:CUSTOM_ID: Keybindings-Applications-8321c6c9
|
||||
:END:
|
||||
#+NAME: sc-app
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1161,7 +1160,7 @@
|
||||
|
||||
*** Internet apps
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-20b7c7c4-3d5e-49b3-b00c-2d0969cb66cc
|
||||
:CUSTOM_ID: Keybindings-Applications-Internet_apps-87e80705
|
||||
:END:
|
||||
#+NAME: sc-app-internet
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1171,7 +1170,7 @@
|
||||
|
||||
*** Screenshots
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9c8faf06-1cb1-4d4f-a5d7-ebbf661d8783
|
||||
:CUSTOM_ID: Keybindings-Applications-Screenshots-fa63a5a5
|
||||
:END:
|
||||
#+NAME: sc-app-screenshot
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1182,7 +1181,7 @@
|
||||
|
||||
*** Emacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-88b6af65-a26e-4ea9-8077-7bcc4a81cec0
|
||||
:CUSTOM_ID: Keybindings-Applications-Emacs-95f8f6a4
|
||||
:END:
|
||||
#+NAME: sc-app-emacs
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1192,7 +1191,7 @@
|
||||
|
||||
*** Rofi
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-68e809b7-83a9-4570-a6f5-e368b47c5619
|
||||
:CUSTOM_ID: Keybindings-Applications-Rofi-ca998c87
|
||||
:END:
|
||||
#+NAME: sc-app-rofi
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1210,7 +1209,7 @@
|
||||
|
||||
** Awesome
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e1dbf76d-7c55-4d7d-9bc6-9d95ea9531b2
|
||||
:CUSTOM_ID: Keybindings-Awesome-7b691e10
|
||||
:END:
|
||||
Here will be declared some shortcuts directly related to Awesome itself.
|
||||
#+NAME: sc-awesome
|
||||
@ -1229,7 +1228,7 @@
|
||||
|
||||
** Clients
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-521b02ca-0ad3-44e8-8d5b-1e75401490da
|
||||
:CUSTOM_ID: Keybindings-Clients-f9f96d60
|
||||
:END:
|
||||
These shortcuts are related to clients (aka windows) management.
|
||||
#+NAME: sc-client
|
||||
@ -1258,7 +1257,7 @@
|
||||
|
||||
** Layout manipulation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4197bf08-bf4f-4f24-9d9d-333416bec7ef
|
||||
:CUSTOM_ID: Keybindings-Layout_manipulation-648b4581
|
||||
:END:
|
||||
#+NAME: sc-layout
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1274,7 +1273,7 @@
|
||||
|
||||
** Media
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-78ca2ce5-3d6b-4361-8613-1a7b1695c851
|
||||
:CUSTOM_ID: Keybindings-Media-f2cc1324
|
||||
:END:
|
||||
#+NAME: sc-media
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1303,7 +1302,7 @@
|
||||
|
||||
** Screen
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f47d70cd-c9d3-41f1-89d1-e7dcbf593e97
|
||||
:CUSTOM_ID: Keybindings-Screen-b73991f0
|
||||
:END:
|
||||
#+NAME: sc-screen
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1318,7 +1317,7 @@
|
||||
|
||||
** Tags
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cf656040-b21a-4c11-a6ed-e99ea73c861c
|
||||
:CUSTOM_ID: Keybindings-Tags-3424b757
|
||||
:END:
|
||||
#+NAME: sc-tag
|
||||
| Key | Modifiers | Lambda? | Action | What it does | Group |
|
||||
@ -1340,7 +1339,7 @@
|
||||
|
||||
* Rules
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-972e7966-6adf-41bc-9ab3-e58725b93f7c
|
||||
:CUSTOM_ID: Rules-c6142cdf
|
||||
:END:
|
||||
With ~awful.rules~, users are able to describe some rules for window clients
|
||||
when the latter spawn, such as their placement, their properties or even
|
||||
@ -1367,7 +1366,7 @@
|
||||
|
||||
** Universal rules
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7311bbcd-c169-4b70-bf09-d1870afe1aa4
|
||||
:CUSTOM_ID: Rules-Universal_rules-50aad2ce
|
||||
:END:
|
||||
The first rule is a universal rule which will match all clients, as you can
|
||||
see with its syntax below:
|
||||
@ -1427,7 +1426,7 @@
|
||||
|
||||
** Floating clients
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9ba9a5a6-d98a-4c9c-8a7d-62e4ab546424
|
||||
:CUSTOM_ID: Rules-Floating_clients-49ab582e
|
||||
:END:
|
||||
Some clients will be declared by default as floating windows. For this, we
|
||||
will declare a rule that will match any of the provided conditions:
|
||||
@ -1468,7 +1467,7 @@
|
||||
|
||||
** Titlebars
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c6ae6b03-92c0-428d-9b0f-831cec7257d9
|
||||
:CUSTOM_ID: Rules-Titlebars-b532fdba
|
||||
:END:
|
||||
Any normal or dialog client will get a titlebar. This is enabled like so:
|
||||
#+NAME: rules-titlebars
|
||||
@ -1480,7 +1479,7 @@
|
||||
|
||||
** Default tag for clients
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5d846dc4-bbdc-4270-b0fc-44c9dbdaf35f
|
||||
:CUSTOM_ID: Rules-Default_tag_for_clients-6ded2a47
|
||||
:END:
|
||||
With the use of some rules, it is possible to define which client are
|
||||
assigned to which tag by default.
|
||||
@ -1519,14 +1518,14 @@
|
||||
|
||||
* Signals
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a7ab2551-7c6f-498f-926c-b6f8c5564d68
|
||||
:CUSTOM_ID: Signals-e32971d6
|
||||
:END:
|
||||
Signals are a way for Awesome to handle events, such as client creation or
|
||||
deletion.
|
||||
|
||||
** Client creation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9eead015-e1f3-4594-b0fa-d5275a502a87
|
||||
:CUSTOM_ID: Signals-Client_creation-8048ac12
|
||||
:END:
|
||||
When a new client is created, the ~manage~ signal is emited. When so, the
|
||||
following snippet ensures this new client is not off the screen, unless its
|
||||
@ -1545,7 +1544,7 @@
|
||||
|
||||
** Titlebar creation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-506d0716-ffba-4b16-9bac-6aede468b642
|
||||
:CUSTOM_ID: Signals-Titlebar_creation-3b1aaa14
|
||||
:END:
|
||||
It is possible for Awesome to send request signals, such as the request to
|
||||
create titlebar (generally for new clients). The following snippet handles
|
||||
@ -1632,7 +1631,7 @@
|
||||
|
||||
** Changes of focus
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b86fa83c-0266-4b7a-a77b-42ad50efbd1f
|
||||
:CUSTOM_ID: Signals-Changes_of_focus-1b73902c
|
||||
:END:
|
||||
The default Awesome configuration enables the following snippet of code that
|
||||
makes windows hovered by the user’s mouse focused. Just for completeness’
|
||||
@ -1655,7 +1654,7 @@
|
||||
|
||||
* Autostart
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-62e6ce88-26c9-4aca-9578-aaa06cd69e2e
|
||||
:CUSTOM_ID: Autostart-f2cf42fe
|
||||
:END:
|
||||
By simply adding a line requesting to spawn a command, it is possible to
|
||||
create some autolaunch. All of my autolaunched apps are launch through the
|
||||
@ -1699,17 +1698,17 @@
|
||||
|
||||
* What to do now :noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4668503f-07ec-4781-a4d1-671f7e6b5821
|
||||
:CUSTOM_ID: What_to_do_now-bce61fe1
|
||||
:END:
|
||||
|
||||
** DONE Error on S-q
|
||||
CLOSED: [2020-04-12 dim. 15:47]
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-828e67df-7fba-4524-95d5-9e505023cb4a
|
||||
:CUSTOM_ID: What_to_do_now-Error_on_S-q-beea9b99
|
||||
:END:
|
||||
~attempt to index a nil value (global 'c')~
|
||||
|
||||
** TODO Make custom theme
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9f6ad3d4-2581-43f1-ab0a-8903479e26e2
|
||||
:CUSTOM_ID: What_to_do_now-Make_custom_theme-5837307e
|
||||
:END:
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-400070eb-725f-4416-a4c6-da3053df750b
|
||||
:CUSTOM_ID: Table_of_Contents-0e46298a
|
||||
:END:
|
||||
- [[#presentation][Presentation]]
|
||||
- [[#4chandl][4chandl]]
|
||||
@ -56,7 +56,7 @@
|
||||
|
||||
* Presentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-309d8596-c35e-4700-a174-13f40884940d
|
||||
:CUSTOM_ID: Presentation-721f3cc4
|
||||
:END:
|
||||
This file will present all the executable scripts I wrote. It is also their
|
||||
original source code, all the following code snippets are exported and tangled
|
||||
@ -80,8 +80,8 @@
|
||||
|
||||
* 4chandl
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-39e14885-9da7-4cba-b24e-c3b181ef5f6b
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/4chandl
|
||||
:CUSTOM_ID: 4chandl-21ff428f
|
||||
:END:
|
||||
Usage: =4chandl [ URL TO THREAD ]=
|
||||
|
||||
@ -151,8 +151,8 @@
|
||||
|
||||
* awiki
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-340e487c-152a-459a-8da5-6f597e67abd3
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/awiki
|
||||
:CUSTOM_ID: awiki-7ac5e1d5
|
||||
:END:
|
||||
~awiki~ is a simple script used with ~rofi~ that relies on the
|
||||
~arch-wiki-docs~ package in order to provide the user a way to quickly find
|
||||
@ -184,8 +184,8 @@
|
||||
|
||||
* Askpass
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b2bef089-69e3-4efb-ac2f-a5eb6a3a80e8
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/askpass
|
||||
:CUSTOM_ID: Askpass-d0d7a8c0
|
||||
:END:
|
||||
Askpass is a simple script that invokes ~rofi~ as a way to get from a GUI the
|
||||
user’s sudo password. It is inspired by [[https://github.com/ODEX-TOS/tools/blob/master/rofi/askpass][this original tool]], rewritten in fish
|
||||
@ -198,8 +198,8 @@
|
||||
|
||||
* Backup
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-30cb6655-382f-492a-a005-df15512ab7a5
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/backup
|
||||
:CUSTOM_ID: Backup-68c7c63e
|
||||
:END:
|
||||
~backup~ is a very simple, oneliner script that will create a local copy of a
|
||||
file and add the date at which it was copied in the filename. You can see its
|
||||
@ -212,7 +212,7 @@
|
||||
* ConnectWifi
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/connect-wifi
|
||||
:CUSTOM_ID: h-7a958906-1f79-448f-95b3-7226bc80e88c
|
||||
:CUSTOM_ID: ConnectWifi-16e5e24a
|
||||
:END:
|
||||
~connect-wifi~ is a small utility tool that allows the user to connect to
|
||||
available WiFi networks. The first thing to do is to select the WiFi we want
|
||||
@ -236,13 +236,13 @@
|
||||
|
||||
** TODO fix it
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-15c1dbea-fb23-405e-9a73-1039412ebd97
|
||||
:CUSTOM_ID: ConnectWifi-fix_it-a4b11503
|
||||
:END:
|
||||
|
||||
* Cppnew
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-264945df-fe7a-4f9d-845a-9cc26c196f4b
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/cppnew
|
||||
:CUSTOM_ID: Cppnew-964e697b
|
||||
:END:
|
||||
=cppnew= is a small utility that helps you create a new C++ project. Several
|
||||
templates are available, the default one using CMake, and three others that
|
||||
@ -273,8 +273,8 @@
|
||||
|
||||
* Cnew
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a4ccdc0f-6813-4207-9479-4d68296f5fdb
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/cnew
|
||||
:CUSTOM_ID: Cnew-d9ec9cc4
|
||||
:END:
|
||||
=cnew= is a small utility script similar to but simpler than cppnew that
|
||||
creates a CMake template C project from the template that already exists in
|
||||
@ -340,8 +340,8 @@
|
||||
|
||||
* Dart Language Server
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-771896e9-ab96-4158-af0b-1fcbef9ab969
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/dart_language_server
|
||||
:CUSTOM_ID: Dart_Language_Server-18c256b1
|
||||
:END:
|
||||
Spacemacs' recommendations on how to use Dart with LSP is outdated, since
|
||||
[[https://github.com/natebosch/dart_language_server][=dart_language_server=]] is obsolete. As recommended by the repo owner, we
|
||||
@ -355,8 +355,8 @@
|
||||
|
||||
* Dmenu
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-50623ecd-b633-4af7-9cc4-5a032f01d1ee
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/dmenu
|
||||
:CUSTOM_ID: Dmenu-527edf04
|
||||
:END:
|
||||
I wrote this very simple script in order to replace =dmenu= with rofi’s
|
||||
emulation of dmenu, since I prefer rofi’s appearance. It basically calls
|
||||
@ -369,7 +369,7 @@
|
||||
* Emacsmail
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/emacsmail
|
||||
:CUSTOM_ID: h-38a20359-28fb-412d-bf83-e2202d04f75f
|
||||
:CUSTOM_ID: Emacsmail-afffb7cd
|
||||
:END:
|
||||
This short script is used in my =~/.local/share/applications/mu4e.desktop=
|
||||
file in order to send to Emacs any ~mailto:~ requests made in my system.
|
||||
@ -380,8 +380,8 @@
|
||||
|
||||
* Emoji picker
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-477cd486-c9a6-4d59-bd9d-62d8f08ee62d
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/rofi-emoji
|
||||
:CUSTOM_ID: Emoji_picker-a1c374ec
|
||||
:END:
|
||||
The emoji picker is a simple fish script that uses rofi and
|
||||
[[file:~/.config/emoji.txt][~/.config/emoji.txt]] to provide a small, local search for emojis. Once the
|
||||
@ -404,8 +404,8 @@
|
||||
|
||||
* Lock
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-320c559f-b8a3-4ce2-956c-90987b4c224c
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/lock
|
||||
:CUSTOM_ID: Lock-635fcb38
|
||||
:END:
|
||||
~lock~ is a simple script that locks the screen with ~i3lock~ while setting as
|
||||
the background image of the locked screen a corrupted screenshot of the screen
|
||||
@ -422,7 +422,7 @@
|
||||
* mp42webm
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/mp42webm
|
||||
:CUSTOM_ID: h-29b8a01c-7499-4a35-be25-f5a593bf40ea
|
||||
:CUSTOM_ID: mp42webm-aeacca58
|
||||
:END:
|
||||
This function allows me to convert easily an mp4 video to the webm format.
|
||||
Nothing too fancy here.
|
||||
@ -434,14 +434,14 @@
|
||||
* Pinfo
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/pinfo
|
||||
:CUSTOM_ID: h-da11c9a4-732c-40f8-b98f-2bcfe297a6aa
|
||||
:CUSTOM_ID: Pinfo-f3644596
|
||||
:END:
|
||||
~pinfo~ is a utility that shows system information
|
||||
|
||||
* Polybar-launch
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-68587918-879b-42db-b304-901d01233f95
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/polybar-launch
|
||||
:CUSTOM_ID: Polybar-launch-36789edc
|
||||
:END:
|
||||
This scripts allows the user to kill polybar and relaunch it, or to simply
|
||||
launch it if polybar isn’t launched yet. This script is a bash script, so
|
||||
@ -483,7 +483,7 @@
|
||||
* Rofi-mount
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/rofi-mount
|
||||
:CUSTOM_ID: h-32ee4a66-e7fb-4abf-a168-fa259efdb1f4
|
||||
:CUSTOM_ID: Rofi-mount-ebbebf68
|
||||
:END:
|
||||
=rofimount= is a script inspired by [[https://github.com/ihebchagra/dotfiles/blob/master/.local/bin/dmount][this one]], based on dmenu, which
|
||||
interactively asks the user what to mount, and where to mount it. What I did
|
||||
@ -496,7 +496,7 @@
|
||||
|
||||
** Get the mountable elements
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2307005f-385e-4149-b885-55e699c822bb
|
||||
:CUSTOM_ID: Rofi-mount-Get_the_mountable_elements-24db7834
|
||||
:END:
|
||||
#+BEGIN_SRC fish
|
||||
begin
|
||||
@ -558,7 +558,7 @@
|
||||
|
||||
** Get the mount point
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a17825bd-96e2-4c90-99ef-b0f2895cffb6
|
||||
:CUSTOM_ID: Rofi-mount-Get_the_mount_point-6c4bac06
|
||||
:END:
|
||||
Now, let’s declare a function that will allow us to chose the drive we want
|
||||
to mount.
|
||||
@ -606,7 +606,7 @@
|
||||
|
||||
** Mount a USB drive, hard drive or partition
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-72781187-ebf2-418c-99b3-bba44922fc60
|
||||
:CUSTOM_ID: Rofi-mount-Mount_a_USB_drive,_hard_drive_or_partition-f5431dbe
|
||||
:END:
|
||||
Alright, we want to mount a partition that answers by the name of
|
||||
=/dev/sdXX=, how do we do that? Let’s create first the function =mountusb=
|
||||
@ -686,7 +686,7 @@
|
||||
|
||||
** Mount an Android device
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-af36260f-2c00-43b7-9383-5235ebac9b51
|
||||
:CUSTOM_ID: Rofi-mount-Mount_an_Android_device-5321f9cd
|
||||
:END:
|
||||
The function that manages to mount Android filesystems is =mountandroid=.
|
||||
Let’s declare it.
|
||||
@ -741,7 +741,7 @@
|
||||
|
||||
** Mount a CD drive
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-73ff10ea-10aa-4044-9315-2321fff73c3f
|
||||
:CUSTOM_ID: Rofi-mount-Mount_a_CD_drive-27278199
|
||||
:END:
|
||||
This part is way easier than the previous functions. As we will see, the
|
||||
function =mountcd='s body is only three lines long. First, let’s declare the
|
||||
@ -774,7 +774,7 @@
|
||||
|
||||
** Ask what type of drive we want to mount
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0bc6ffba-5c45-44e5-a3d3-039a8ea43905
|
||||
:CUSTOM_ID: Rofi-mount-Ask_what_type_of_drive_we_want_to_mount-0c15cffa
|
||||
:END:
|
||||
The first thing we will be asked if different types of drives are detected is
|
||||
which of these types the user wishes to mount. This is done with the function
|
||||
@ -816,7 +816,7 @@
|
||||
|
||||
** Launch the mounting functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-646dc678-4d87-4fec-8130-5d7d0fc16756
|
||||
:CUSTOM_ID: Rofi-mount-Launch_the_mounting_functions-218ad001
|
||||
:END:
|
||||
Now that we have declared our functions and set our variables, we’ll read the
|
||||
temporary file described in [[#h-2307005f-385e-4149-b885-55e699c822bb][Get the mountable elements]]. The amount of lines
|
||||
@ -875,7 +875,7 @@
|
||||
* Rofi-pass
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/rofi-pass
|
||||
:CUSTOM_ID: h-a52876ed-351b-400a-b250-d93aab27e0c8
|
||||
:CUSTOM_ID: Rofi-pass-8335357f
|
||||
:END:
|
||||
=rofi-pass= is a simple utility that gets a password stored in the [[https://www.passwordstore.org/][=pass=]]
|
||||
password manager with rofi as its interface, and then stores the password in
|
||||
@ -957,8 +957,8 @@
|
||||
|
||||
* Rofi-umount
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-68a1f671-5dc6-4120-81c8-c94fffa7d7a3
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/rofi-umount
|
||||
:CUSTOM_ID: Rofi-umount-ddde1667
|
||||
:END:
|
||||
=rofiumount= is the counterpart of =rofimount= for unmounting our mounted
|
||||
partitions. It is a fish script, so let’s declare it as that with its shebang.
|
||||
@ -968,7 +968,7 @@
|
||||
|
||||
** Get the unmountable drives
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-dab41471-4f69-4be8-8d77-58ccc604e4e2
|
||||
:CUSTOM_ID: Rofi-umount-Get_the_unmountable_drives-89c71040
|
||||
:END:
|
||||
First, we will need to list all the drives that can be safely unmounted.
|
||||
Let’s run this.
|
||||
@ -1008,7 +1008,7 @@
|
||||
|
||||
** Unmount disk partitions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-01c37335-5ae8-484f-911a-a08cc4679398
|
||||
:CUSTOM_ID: Rofi-umount-Unmount_disk_partitions-0d425a47
|
||||
:END:
|
||||
The function =unmountusb= will take care of unmounting any drive we can
|
||||
safely unmount. First, let’s declare the function.
|
||||
@ -1043,7 +1043,7 @@
|
||||
|
||||
** Unmount Android device
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d7d2a12e-c759-4dbe-a17b-bb90c514dca2
|
||||
:CUSTOM_ID: Rofi-umount-Unmount_Android_device-ae1d5904
|
||||
:END:
|
||||
The function =unmountandroid= will take care of unmounting any mounted
|
||||
Android device. First, let’s declare our function.
|
||||
@ -1075,7 +1075,7 @@
|
||||
|
||||
** Unmount CD drive
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ae7a8a83-f022-493c-8410-ad99abf42b89
|
||||
:CUSTOM_ID: Rofi-umount-Unmount_CD_drive-369a2f61
|
||||
:END:
|
||||
=unmountcd= will take care of unmounting any mounted CD drive. Let’s declare
|
||||
this function.
|
||||
@ -1107,7 +1107,7 @@
|
||||
|
||||
** Ask what type of drive to unmount
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4320a68b-8369-4ac5-a049-cfb12435e45e
|
||||
:CUSTOM_ID: Rofi-umount-Ask_what_type_of_drive_to_unmount-6287af48
|
||||
:END:
|
||||
If several types of unmountable drives are available, let’s ask the user
|
||||
which type to unmount based on the content of the temporary file declared in
|
||||
@ -1145,7 +1145,7 @@
|
||||
|
||||
** Launch the unmounting functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5880963f-1403-41dc-ae7a-3958e2013fa9
|
||||
:CUSTOM_ID: Rofi-umount-Launch_the_unmounting_functions-7c48a928
|
||||
:END:
|
||||
Now back to the body of our script, let’s input in a switch case the number
|
||||
of lines contained in our temporary file.
|
||||
@ -1193,7 +1193,7 @@
|
||||
* set-screens
|
||||
:PROPERTIES:
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/set-screens
|
||||
:CUSTOM_ID: h-74ec5080-51f4-408f-a65c-6e1f5e8e8163
|
||||
:CUSTOM_ID: set-screens-01bd989a
|
||||
:END:
|
||||
~set-screens~ is a small script that allows the user to automatically set up
|
||||
an external monitor
|
||||
@ -1227,8 +1227,8 @@
|
||||
|
||||
* Starwars
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-127de2b2-d84b-4508-89d2-b4577e8dbece
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/starwars
|
||||
:CUSTOM_ID: Starwars-654f8637
|
||||
:END:
|
||||
This is a one-liner that allows you to watch Star Wars episode 4 in ASCII art
|
||||
in your terminal. Here is the code:
|
||||
@ -1240,7 +1240,7 @@
|
||||
* UpdateFlutter
|
||||
:PROPERTIES:
|
||||
:header-args: :tangle ~/.local/bin/UpdateFlutter
|
||||
:CUSTOM_ID: h-1005db1f-aecc-4fca-be2d-98fd33c1461a
|
||||
:CUSTOM_ID: UpdateFlutter-1e8fbeb7
|
||||
:END:
|
||||
This is a simple utility to be ran when the ~flutter~ package is updated.
|
||||
#+BEGIN_SRC fish
|
||||
@ -1253,8 +1253,8 @@
|
||||
|
||||
* Wacom setup
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e407ceef-2f14-4474-916b-6b687cf9f2e9
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/wacom-setup
|
||||
:CUSTOM_ID: Wacom_setup-331fb024
|
||||
:END:
|
||||
I made a small and quick utility to set up my Wacom tablet so it is only bound
|
||||
to one screen. This is a fish script, so let’s insert the sheband.
|
||||
@ -1264,7 +1264,7 @@
|
||||
|
||||
** Set our variables
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c46f0eaf-ae46-4595-8d7a-944bc789cc06
|
||||
:CUSTOM_ID: Wacom_setup-Set_our_variables-3cb6d58e
|
||||
:END:
|
||||
Let’s first declare our function that will be called to set our variables.
|
||||
#+BEGIN_SRC fish
|
||||
@ -1305,7 +1305,7 @@
|
||||
|
||||
** Select our screen
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c81850ec-b2dd-4c57-8570-aca14ca4061b
|
||||
:CUSTOM_ID: Wacom_setup-Select_our_screen-7822c0c3
|
||||
:END:
|
||||
This function will allow us to select the screen on which the tablet will be
|
||||
active. We can also select the option “desktop” so that all screens are
|
||||
@ -1355,7 +1355,7 @@
|
||||
|
||||
** Adjust the tablet
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7e7bcdd1-dce8-43aa-b26e-cc4f38be2a1b
|
||||
:CUSTOM_ID: Wacom_setup-Adjust_the_tablet-342acaf3
|
||||
:END:
|
||||
This function will take care of adjusting our tablet to our screen. Let’s
|
||||
declare our function.
|
||||
@ -1409,7 +1409,7 @@
|
||||
|
||||
** Lauch the functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e8699018-acf1-42f9-9ce7-4f7bd1a83f9c
|
||||
:CUSTOM_ID: Wacom_setup-Lauch_the_functions-2ab8b4d9
|
||||
:END:
|
||||
Back to the main body of the script, we can now launch the functions
|
||||
sequencially.
|
||||
@ -1421,8 +1421,8 @@
|
||||
|
||||
* Weather
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5de0e820-d9d7-4c36-941c-e716acbb49cd
|
||||
:HEADER-ARGS: :tangle ~/.local/bin/we
|
||||
:CUSTOM_ID: Weather-4ed00bb0
|
||||
:END:
|
||||
A quick and useful script I often use is a ~curl~ request to [[http://v2.wttr.in/][v2.wttr.in]] to get
|
||||
a weather forecast in the terminal. By default, I want the request to be about
|
||||
|
@ -9,9 +9,9 @@
|
||||
#+PROPERTY: header-args :exports code :tangle no
|
||||
#+STARTUP: content
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c7ab05d0-4c5f-4a4c-8603-4c79e264141c
|
||||
:CUSTOM_ID: Table_of_Contents-06250a87
|
||||
:END:
|
||||
- [[#presentation][Presentation]]
|
||||
- [[#fish-from-within-emacs][Fish from within Emacs]]
|
||||
@ -53,7 +53,7 @@
|
||||
|
||||
* Presentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c2560b46-7f97-472f-b898-5ab483832228
|
||||
: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
|
||||
@ -69,7 +69,7 @@
|
||||
|
||||
* Fish from within Emacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-97d738f4-1ea0-4f64-a31d-19643486a951
|
||||
: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=.
|
||||
@ -81,7 +81,7 @@
|
||||
|
||||
* Tramp remote access
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6cad2cc9-aef6-4df4-90f9-97053e82072a
|
||||
: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
|
||||
@ -101,7 +101,7 @@
|
||||
|
||||
* Regular fish shell appearance
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a8434b29-c146-4141-b8f8-1b446c791907
|
||||
: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
|
||||
@ -177,7 +177,7 @@
|
||||
|
||||
* Global variables
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0eff37da-af9f-4546-8ad3-201961a2200f
|
||||
:CUSTOM_ID: Global_variables-1c84df8b
|
||||
:END:
|
||||
|
||||
In order to keep some other code clean, I set the ~$BROWSER~ variable so I
|
||||
@ -194,7 +194,7 @@
|
||||
|
||||
** Development
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6e86740b-c7f1-49e0-a4f8-73e870c69324
|
||||
: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
|
||||
@ -229,7 +229,7 @@
|
||||
|
||||
** $PATH
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a9c79e7c-29ea-49e0-959e-0983e886f346
|
||||
: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
|
||||
@ -267,7 +267,7 @@
|
||||
|
||||
* Abbreviations
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-740bd904-3e32-4c09-b0a4-bde16ae2e116
|
||||
:CUSTOM_ID: Abbreviations-97537716
|
||||
:END:
|
||||
#+NAME: generate-abbr
|
||||
#+BEGIN_SRC emacs-lisp :var table=[] :exports none :tangle no
|
||||
@ -281,7 +281,7 @@
|
||||
|
||||
** System monitoring
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ec910a8c-9154-48a4-b4cd-df28cb4e54d9
|
||||
: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,
|
||||
@ -314,14 +314,14 @@
|
||||
|
||||
** System management (packages and services)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-78ac23f0-960d-4f56-9cba-64413fd61885
|
||||
: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.
|
||||
|
||||
*** Package management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-281a59aa-4ea0-47ab-a4cc-33fff8d38165
|
||||
: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
|
||||
@ -343,7 +343,7 @@
|
||||
|
||||
*** Service management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3a734119-ccee-4cdf-b04c-d55a37dea571
|
||||
: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.
|
||||
@ -360,14 +360,14 @@
|
||||
|
||||
** Development
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-32ae38a2-41ad-438e-b619-220a63166115
|
||||
:CUSTOM_ID: Abbreviations-Development-d6050ca4
|
||||
:END:
|
||||
A good amount of these commands are development related, especially when it
|
||||
comes to compilation or Docker.
|
||||
|
||||
*** CMake
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-887c87aa-b100-4b27-9006-778fd7e3329c
|
||||
: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.
|
||||
@ -384,7 +384,7 @@
|
||||
|
||||
*** Compilation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0beb47e5-d76a-4037-8f58-e8de141e3761
|
||||
: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.
|
||||
@ -403,7 +403,7 @@
|
||||
|
||||
*** Docker
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-91c7ff90-7b43-4802-be69-5d102281c6d3
|
||||
: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.
|
||||
@ -428,7 +428,7 @@
|
||||
|
||||
*** Git
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e72347d4-590e-448c-bc33-0a70fa8ab35b
|
||||
: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,
|
||||
@ -445,7 +445,7 @@
|
||||
|
||||
*** Prolog
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cbb6c31e-faaa-48c3-a83a-d1f143fdcb8d
|
||||
:CUSTOM_ID: Abbreviations-Development-Prolog-72c9d2ef
|
||||
:END:
|
||||
When I launch =swipl=, I prefer to have my terminal cleaned before and
|
||||
after it runs, I find it more clean.
|
||||
@ -461,7 +461,7 @@
|
||||
|
||||
*** Text editors
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-51155e06-872d-4a12-9bf7-ae5eabc256ad
|
||||
: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
|
||||
@ -488,7 +488,7 @@
|
||||
|
||||
** LaTeX
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a8f8a707-90d7-4784-982d-d959b183148e
|
||||
: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
|
||||
@ -508,7 +508,7 @@
|
||||
|
||||
** Some security measures
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-dd97ea71-c43f-4b79-8bb7-1f857284b1b4
|
||||
: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.
|
||||
@ -540,7 +540,7 @@
|
||||
|
||||
** Typos
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4c5a03cd-20a8-437e-87b7-af990780084e
|
||||
: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.
|
||||
@ -563,14 +563,14 @@
|
||||
|
||||
** Misc
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3a237ec0-c535-42c7-9c60-3d083745b643
|
||||
:CUSTOM_ID: Abbreviations-Misc-c2631eb6
|
||||
:END:
|
||||
Finally, some miscellaneous abbreviations that don’t really fit into any of
|
||||
the above categories.
|
||||
|
||||
*** Sudo
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0955e2fc-ec25-41b6-814a-929fa3718dda
|
||||
: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
|
||||
@ -582,7 +582,7 @@
|
||||
|
||||
*** Exit
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8cf0e895-b919-41a8-ad3d-c5294dc507fd
|
||||
:CUSTOM_ID: Abbreviations-Misc-Exit-e3482f5c
|
||||
:END:
|
||||
Sometimes I find it easier to just type =q= instead of =exit=.
|
||||
#+BEGIN_SRC fish
|
||||
@ -591,7 +591,7 @@
|
||||
|
||||
*** History
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-162052c5-63c4-435a-b973-422346522c69
|
||||
: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.
|
||||
@ -601,11 +601,11 @@
|
||||
|
||||
*** ~youtube-dl~ related commands
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-177d56dc-39a6-4f4c-a7ba-179dd5c6cac8
|
||||
:CUSTOM_ID: Abbreviations-Misc-~youtube-dl~_related_commands-654caed1
|
||||
:END:
|
||||
**** Song download from YouTube
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4bc663a9-b609-4c86-9a4d-a220013c67f9
|
||||
:CUSTOM_ID: Abbreviations-Misc-~youtube-dl~_related_commands-Song_download_from_YouTube-ec2afa3c
|
||||
:END:
|
||||
When I want to download a song from YouTube, I’ll just use the command
|
||||
=flac videoIdentifier= to get it through =youtube-dl=.
|
||||
@ -615,7 +615,7 @@
|
||||
|
||||
**** Videos download from YouTube
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e6e45b59-7620-4d17-ba32-67a33f39cc4b
|
||||
:CUSTOM_ID: Abbreviations-Misc-~youtube-dl~_related_commands-Videos_download_from_YouTube-33910b0b
|
||||
:END:
|
||||
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
|
||||
@ -628,7 +628,7 @@
|
||||
|
||||
*** MPV
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3fd5a7eb-4ed4-4b0b-87ca-28f36fb22793
|
||||
:CUSTOM_ID: Abbreviations-Misc-MPV-f99dd400
|
||||
:END:
|
||||
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
|
||||
@ -639,7 +639,7 @@
|
||||
|
||||
*** Compression
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-05919be3-360a-45c6-8c89-76836375d55b
|
||||
: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
|
||||
@ -658,7 +658,7 @@
|
||||
|
||||
*** Sxiv
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-41cfc583-14ba-4f15-9578-bc37b432a3ce
|
||||
:CUSTOM_ID: Abbreviations-Misc-Sxiv-1c0cf845
|
||||
:END:
|
||||
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
|
||||
@ -671,7 +671,7 @@
|
||||
|
||||
*** exa
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9c015cdd-30c0-4464-8e1a-b67a98eaf036
|
||||
:CUSTOM_ID: Abbreviations-Misc-exa-e1b528b9
|
||||
:END:
|
||||
#+NAME: exa-abbr
|
||||
| abbreviation | command |
|
||||
@ -686,7 +686,7 @@
|
||||
|
||||
*** Network Management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5f9d4866-3086-4ed9-9ff3-d80a0af36593
|
||||
:CUSTOM_ID: Abbreviations-Misc-Network_Management-0b7fc91d
|
||||
:END:
|
||||
First, we have just =nmcli= with sane default options, that is a pretty output
|
||||
with colors.
|
||||
@ -696,7 +696,7 @@
|
||||
|
||||
*** NordVPN
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f35e00a2-ec5b-416d-821f-56040ad1d6b4
|
||||
: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
|
||||
@ -720,7 +720,7 @@
|
||||
|
||||
*** Webcam
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-465adbc6-cad0-441a-9e54-f5e389e7362d
|
||||
:CUSTOM_ID: Abbreviations-Misc-Webcam-34eedb5a
|
||||
:END:
|
||||
#+NAME: webcam-abbr
|
||||
| abbreviation | command |
|
||||
@ -733,7 +733,7 @@
|
||||
|
||||
*** Wget
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-74f84f1c-433d-488a-88a7-89915c1a3bd5
|
||||
:CUSTOM_ID: Abbreviations-Misc-Wget-27f4bebf
|
||||
:END:
|
||||
By default, continue a download that was interupted.
|
||||
#+BEGIN_SRC fish
|
||||
|
@ -9,9 +9,9 @@
|
||||
#+PROPERTY: header-args:emacs-lisp :exports none :tangle no
|
||||
#+STARTUP: content
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c7ab05d0-4c5f-4a4c-8603-4c79e264141c
|
||||
:CUSTOM_ID: Table_of_Contents-b6f56d3d
|
||||
:END:
|
||||
- [[#presentation][Presentation]]
|
||||
- [[#variables-declaration][Variables declaration]]
|
||||
@ -51,7 +51,7 @@
|
||||
|
||||
* Presentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2b02cfba-4ada-4f75-b522-bfcb8512119c
|
||||
:CUSTOM_ID: Presentation-9c7a53bf
|
||||
:END:
|
||||
=i3= is a window manager for GNU/Linux which automatically tiles windows in
|
||||
workspaces. This configuration was ade to automatically handle some tasks such
|
||||
@ -67,11 +67,11 @@
|
||||
|
||||
* Variables declaration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-27f4474a-e037-4e40-b33a-7fe34ca012e3
|
||||
:CUSTOM_ID: Variables_declaration-0ebc9a21
|
||||
:END:
|
||||
** Global
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-dda00dd9-90e4-460b-b49c-8939c1ae11ce
|
||||
:CUSTOM_ID: Variables_declaration-Global-1cf1bfe4
|
||||
:END:
|
||||
The first I do is declaring the modifier key and the alt key —I don’t find
|
||||
the names =Mod1= and =Mod4= to be explicit enough. This will map =$mod= to
|
||||
@ -163,7 +163,7 @@
|
||||
|
||||
** Floating windows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-944b65df-c5c6-4f9a-9824-08e063ba20dd
|
||||
:CUSTOM_ID: Variables_declaration-Floating_windows-897d0c3b
|
||||
:END:
|
||||
Floating windows are windows that are not tiled with other windows, but
|
||||
rather are free to go anywhere on your screen, with any size. A bit like what
|
||||
@ -182,14 +182,14 @@
|
||||
|
||||
* i3 global settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d9bc7729-d325-4071-8ad9-043ea5b80430
|
||||
:CUSTOM_ID: i3_global_settings-1b863d93
|
||||
:END:
|
||||
Some settings affect i3 globally, such as its aspect or how it handles the
|
||||
mouse. Hence, here are some settings I set in my configuration.
|
||||
|
||||
** Mouse settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3ab33a7a-6a31-4a76-a59f-baf7913279b4
|
||||
:CUSTOM_ID: i3_global_settings-Mouse_settings-4630241d
|
||||
:END:
|
||||
First of all, I do not want i3 to warp my mouse each time I change windows;
|
||||
my mouse stays where it is.
|
||||
@ -206,7 +206,7 @@
|
||||
|
||||
** Popup handling
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-64ef3c3b-bc70-4839-9bee-e113df4ee848
|
||||
:CUSTOM_ID: i3_global_settings-Popup_handling-51b6ed8d
|
||||
:END:
|
||||
While in fullscreen, some software might generate a popup. In that case, I
|
||||
want to be aware of that, and any popup will make me leave fullscreen in
|
||||
@ -217,7 +217,7 @@
|
||||
|
||||
** Behavior of workspace changes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-192d7269-eba7-4684-80c7-cb01c32c5f38
|
||||
:CUSTOM_ID: i3_global_settings-Behavior_of_workspace_changes-00202985
|
||||
:END:
|
||||
When changing workspace as described below, we often want to go back to the
|
||||
previous workspace we were working on, but we might not remember immediately
|
||||
@ -231,7 +231,7 @@
|
||||
|
||||
** Gaps and window appearance
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-52a82bb4-42b0-4740-aae6-79636072dc62
|
||||
:CUSTOM_ID: i3_global_settings-Gaps_and_window_appearance-749e9f7b
|
||||
:END:
|
||||
As mentioned in at the beginning of this document, I am using i3-gaps, which
|
||||
brings spacing (gaps) between windows to i3.
|
||||
@ -278,7 +278,7 @@
|
||||
|
||||
* Assigning windows to workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-21870449-7730-4164-8add-167cb4e75218
|
||||
:CUSTOM_ID: Assigning_windows_to_workspaces-e59f61e5
|
||||
:END:
|
||||
I decided to bind some windows to some workspaces in order to have a better
|
||||
organization of my desktop.
|
||||
@ -345,7 +345,7 @@
|
||||
|
||||
* Shortcuts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b364743d-2ff0-4548-805e-9a9e6efdaddd
|
||||
:CUSTOM_ID: Shortcuts-9c7074d3
|
||||
:END:
|
||||
I use *A LOT* of shortcuts when it comes to my workflow. Like, all the time.
|
||||
So, expect this chapter to be a bit long, and I’ll try to make it readable
|
||||
@ -365,7 +365,7 @@
|
||||
|
||||
** Terminal shortcuts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7dbb2902-29ca-48a7-bfa3-a831b72549f3
|
||||
:CUSTOM_ID: Shortcuts-Terminal_shortcuts-514ecdbe
|
||||
:END:
|
||||
I have a couple of shortcuts which are related to my terminal. For instance,
|
||||
~$mod+Return~ opens a regular terminal instance while ~$mod+$alt+M~ opens an
|
||||
@ -387,7 +387,7 @@
|
||||
|
||||
** i3 shortcuts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-22855720-e388-463a-a941-fa8bad2c89c0
|
||||
:CUSTOM_ID: Shortcuts-i3_shortcuts-369039ae
|
||||
:END:
|
||||
A couple of shortcuts are dedicated to i3 itself.
|
||||
#+NAME: i3-sh
|
||||
@ -424,11 +424,11 @@
|
||||
|
||||
** Window and workspace management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cf3b4010-e937-473b-a0c9-9b25b2d3a0ec
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-a384b8f8
|
||||
:END:
|
||||
*** Managing how windows will split
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e4e57280-91d2-4140-9295-7117cf85ed04
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Managing_how_windows_will_split-5a22ae31
|
||||
:END:
|
||||
It is possible to indicate to i3 how windows interact with one another, and
|
||||
especially how they are organized by spawning new windows either to the
|
||||
@ -446,7 +446,7 @@
|
||||
|
||||
*** Focus windows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-570eda16-ed4b-4684-a54f-9202e8409ed9
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Focus_windows-69a00ae9
|
||||
:END:
|
||||
To change window focus, you can use one of the following shortcuts:
|
||||
#+NAME: window-focus-sh
|
||||
@ -464,7 +464,7 @@
|
||||
|
||||
*** Focus workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-333da167-e91c-48a7-99ef-d45b2af4c220
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Focus_workspaces-9f4bee74
|
||||
:END:
|
||||
Just like windows, it is also possible to change focus between workspaces,
|
||||
because let’s be honest, most people won’t have ten screens to display all
|
||||
@ -490,7 +490,7 @@
|
||||
|
||||
*** Moving windows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0322384a-6a23-48c9-989b-7ecae53a4e06
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Moving_windows-d8c90ac2
|
||||
:END:
|
||||
To move windows, a couple of shortcuts are available:
|
||||
#+NAME: window-move-sh
|
||||
@ -508,7 +508,7 @@
|
||||
|
||||
*** Moving containers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-834b2b46-1684-478b-a4d3-1cff8ec2ad2d
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Moving_containers-b97cf4ae
|
||||
:END:
|
||||
To move containers between the available screens, you have the following
|
||||
shortcuts:
|
||||
@ -543,7 +543,7 @@
|
||||
|
||||
*** Moving workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4f79905e-e8e2-4675-918b-1bbe9846b088
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Moving_workspaces-a71d7b54
|
||||
:END:
|
||||
|
||||
It is also possible to move workspaces. The related shortcuts available are
|
||||
@ -564,7 +564,7 @@
|
||||
|
||||
*** Close windows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-05e30514-86c2-42af-8712-dc0bdc30cd3d
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Close_windows-5e521a48
|
||||
:END:
|
||||
To close windows, we have two main shortcuts: Alt+F4 and mod+q. The first
|
||||
one is here due to habits, but I don’t really use it anymore due to my main
|
||||
@ -583,7 +583,7 @@
|
||||
|
||||
*** Manage the size of the current window
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f730b4c8-8602-426b-a2bc-7dfbbe42e711
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Manage_the_size_of_the_current_window-11afa914
|
||||
:END:
|
||||
It is possible to change the size of the current window, even if it is a
|
||||
floating one. The first shortcut that might interest you is $mod+f which
|
||||
@ -633,7 +633,7 @@
|
||||
|
||||
*** Manage floating windows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-08f738b7-3369-4dbd-98e6-df6d6aa381b8
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Manage_floating_windows-9206f4da
|
||||
:END:
|
||||
As said above, your windows can be floating windows instead of being tiled
|
||||
like they are by default. For this too we have a couple of shortcuts:
|
||||
@ -653,7 +653,7 @@
|
||||
|
||||
*** Scratchpad and window display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-92e67454-eccb-4465-8d47-947a1a5d55d9
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Scratchpad_and_window_display-10d8d1f4
|
||||
:END:
|
||||
You can think of i3’s scratchpad as some sort of extra workspace in which
|
||||
you can hide your windows you are not using, or as if you want to reduce a
|
||||
@ -682,7 +682,7 @@
|
||||
|
||||
*** Gaps management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-20c6fc10-984e-411c-acc9-8bc057d2aaa6
|
||||
:CUSTOM_ID: Shortcuts-Window_and_workspace_management-Gaps_management-33979213
|
||||
:END:
|
||||
It is possible to dynamically change the gaps between containers if we want
|
||||
to change a bit the appearance of i3. For that, we obviously have some
|
||||
@ -703,7 +703,7 @@
|
||||
|
||||
** Launching software
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4839dab5-1cd3-450b-8fb9-2992dd0c4d22
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-0e088e69
|
||||
:END:
|
||||
A big part of my i3 shortcuts though are related to launching various
|
||||
software. I’ll try to sort them by category here, but do take a look even at
|
||||
@ -712,7 +712,7 @@
|
||||
|
||||
*** Software and command launcher
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c5e8b03a-a46d-4eef-b514-96794c42621d
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Software_and_command_launcher-a3f5863e
|
||||
:END:
|
||||
These commands will allow the user to launch applications which provide
|
||||
~.desktop~ files or user-defined ~.desktop~ files, as well as commands with
|
||||
@ -730,7 +730,7 @@
|
||||
|
||||
*** Internet software
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e27be13a-4085-4f09-ae90-c48ceb1c4c6f
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Internet_software-a0524cd8
|
||||
:END:
|
||||
I have a couple of Internet-related software I can launch easily.
|
||||
#+NAME: internet-sh
|
||||
@ -747,7 +747,7 @@
|
||||
|
||||
*** Screenshots
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3e87379d-8476-4d05-b756-b7ee68130390
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Screenshots-41e41c88
|
||||
:END:
|
||||
A couple of shortcuts are available for taking screenshots.
|
||||
#+NAME: screenshot-sh
|
||||
@ -764,7 +764,7 @@
|
||||
|
||||
*** Screen brightness
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f583f796-c287-4e4f-a88a-205cc1837ff6
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Screen_brightness-6855d53f
|
||||
:END:
|
||||
Here we have four commands for managing our screen’s brightness (this is
|
||||
useful for laptops, not so much with desktops), and two of them are actually
|
||||
@ -785,7 +785,7 @@
|
||||
|
||||
*** Media control
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4002e136-ffab-4819-ae93-1a72b9f995ae
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Media_control-18ad2815
|
||||
:END:
|
||||
Some shortcuts are dedicated to media control, especially when it comes to
|
||||
controlling music. All of these media control shortcuts will be calls to
|
||||
@ -836,7 +836,7 @@
|
||||
|
||||
*** Rofi utilities
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-15f2639e-52d2-467e-83e2-6ab085fa7710
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Rofi_utilities-b8eb5b95
|
||||
:END:
|
||||
We also have some utilities I’ve written and which are interfaced with rofi.
|
||||
Here are said shortcuts.
|
||||
@ -858,7 +858,7 @@
|
||||
|
||||
*** Miscellaneous
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7f9ef1f7-da6b-4428-9d8c-f5a5f004c495
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Miscellaneous-7ec80fea
|
||||
:END:
|
||||
And last but not least, I have some other shortcuts for various software,
|
||||
some of them which I use quite a lot like the shortcut for launching Emacs.
|
||||
@ -877,7 +877,7 @@
|
||||
|
||||
*** Screen management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ea5bab8e-cb7c-4ccb-8594-c2c319d1f7eb
|
||||
:CUSTOM_ID: Shortcuts-Launching_software-Screen_management-f9b35bf2
|
||||
:END:
|
||||
Additionally, we have a shortcut for entering presentation mode on the
|
||||
additional screen of the computer; on my main computer, Mila, the additional
|
||||
@ -898,7 +898,7 @@
|
||||
|
||||
* Software autolaunch
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-18769c14-2ec0-41a2-9450-dae71714d0f4
|
||||
:CUSTOM_ID: Software_autolaunch-ccee82f6
|
||||
:END:
|
||||
When i3 is launched, I want it to also launch some software automatically.
|
||||
Here is what we will launch:
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-400070eb-725f-4416-a4c6-da3053df750b
|
||||
:CUSTOM_ID: Table_of_Contents-2444603f
|
||||
:END:
|
||||
- [[#presentation][Presentation]]
|
||||
- [[#screenshots][Screenshots]]
|
||||
@ -38,7 +38,7 @@
|
||||
|
||||
* Presentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-536e69f5-c012-4b7d-8a45-3a340d3bc7ee
|
||||
: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
|
||||
@ -61,7 +61,7 @@
|
||||
|
||||
* Screenshots
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ee37502b-09a4-4668-88e2-1d4406252bd2
|
||||
:CUSTOM_ID: Screenshots-51f1cef3
|
||||
:END:
|
||||
|
||||
#+CAPTION: Desktop with Neofetch in the terminal
|
||||
@ -75,7 +75,7 @@
|
||||
|
||||
* Features
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8539dd6f-4fcb-4dc7-a3ef-b8ad198c91d4
|
||||
:CUSTOM_ID: Features-5ab2a2c0
|
||||
:END:
|
||||
- Emacs configuration perfectly tailored for my own use
|
||||
- Beautiful and comfy i3 and polybar configuration
|
||||
@ -91,11 +91,11 @@
|
||||
|
||||
** Tiling Window Managers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b70d9b3b-4259-4311-aa23-4792656220bb
|
||||
:CUSTOM_ID: Features-Tiling_Window_Managers-da221e37
|
||||
:END:
|
||||
*** AwesomeWM
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-dbfc71a0-9d96-4f53-a064-f8d6f9567813
|
||||
: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,
|
||||
@ -103,23 +103,23 @@
|
||||
|
||||
*** i3 configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c918e370-d867-412c-8b0e-078e4e3772e0
|
||||
: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]].
|
||||
|
||||
** Graphical tweaks
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-08018a9b-f0c8-4bff-b18d-834ec0dc11a8
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-9879f6b0
|
||||
:END:
|
||||
*** GTK Settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1e9b2c5f-9ce4-4706-af5b-fb3b423cdb82
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-GTK_Settings-752e9916
|
||||
:END:
|
||||
**** GTK2
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6b46d7ef-3015-46e6-b9f4-58be449ff9b6
|
||||
:HEADER-ARGS: :tangle ~/.config/gtk-2.0/gtkfilechooser.ini
|
||||
:CUSTOM_ID: Features-Graphical_tweaks-GTK_Settings-GTK2-74c9de24
|
||||
:END:
|
||||
Regarding GTK2, I have only one configuration file: the filechooser’s
|
||||
configuration file.
|
||||
@ -182,8 +182,8 @@
|
||||
|
||||
**** GTK3
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0de8173e-2c28-4ac2-811e-e6c1a437ef51
|
||||
:HEADER-ARGS: :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:
|
||||
@ -227,7 +227,7 @@
|
||||
|
||||
*** Picom
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c539fde3-3f1a-4855-8d63-28729ed806a5
|
||||
: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
|
||||
@ -235,8 +235,8 @@
|
||||
|
||||
*** Xresources
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e6f48975-3b86-4a75-a7e5-5cc9edbd9869
|
||||
:HEADER-ARGS: :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
|
||||
@ -254,11 +254,11 @@
|
||||
|
||||
** Text and source code editing
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2730f882-e775-41a3-b169-5049c142cc54
|
||||
:CUSTOM_ID: Features-Text_and_source_code_editing-63cc66d5
|
||||
:END:
|
||||
*** Emacs configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f6d2561f-5c02-4540-8287-4acf3037b3d5
|
||||
: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…
|
||||
@ -271,20 +271,20 @@
|
||||
|
||||
*** Nano
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1724166b-55b7-4a64-9ff1-47c2a9e76f46
|
||||
: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.
|
||||
|
||||
*** Rustfmt
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0ae9005c-76a6-49f6-947c-0c8464616e10
|
||||
:CUSTOM_ID: Features-Text_and_source_code_editing-Rustfmt-2c4ac0b3
|
||||
:END:
|
||||
You can find my Rustfmt configuration [[file:rustfmt.org][here]].
|
||||
|
||||
** Custom scripts in =PATH=
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d582e107-fa66-4f79-869e-2b49116ed1ec
|
||||
: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
|
||||
@ -295,19 +295,19 @@
|
||||
|
||||
** Fish configuration with useful abbreviations
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f35ed9a3-c9fc-458c-8a62-693f679f6992
|
||||
: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.
|
||||
|
||||
** And some minor configuration files
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1a819f94-ab79-41e6-9509-a2781ab10b79
|
||||
:CUSTOM_ID: Features-And_some_minor_configuration_files-d5cec319
|
||||
:END:
|
||||
*** Email signature
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f6c48286-a320-493f-b330-ee0a697e6d79
|
||||
:HEADER-ARGS: :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
|
||||
@ -320,8 +320,8 @@
|
||||
|
||||
*** Global gitignore
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4f92eb29-7cfa-48ec-b39d-39037ace3682
|
||||
:HEADER-ARGS: :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
|
||||
@ -340,14 +340,14 @@
|
||||
|
||||
** Tmux configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4f48b912-b67b-4549-a671-802e76221f46
|
||||
: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]].
|
||||
|
||||
* Dependencies
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5849dbcf-a650-4323-9a90-bec549a7b982
|
||||
: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:
|
||||
@ -374,7 +374,7 @@
|
||||
|
||||
* Installation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-bfb2e09b-d5d7-4d6f-8b29-763c49b3fd09
|
||||
: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
|
||||
@ -383,7 +383,7 @@
|
||||
|
||||
* Licence
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a3438126-ee60-4f11-a2f6-f52e49dade59
|
||||
: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
|
||||
|
@ -12,9 +12,8 @@
|
||||
|
||||
* Table of Contents :TOC_4_gh:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-400070eb-725f-4416-a4c6-da3053df750b
|
||||
:CUSTOM_ID: Table_of_Contents-914af127
|
||||
:END:
|
||||
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#install-arch-linux][Install Arch Linux]]
|
||||
- [[#get-the-latest-live-system-with-fast-mirrors][Get the latest live system with fast mirrors]]
|
||||
@ -61,7 +60,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-12a4ef6d-13b6-4d1f-9e0f-a060b63b12d4
|
||||
:CUSTOM_ID: Introduction-cd5792cd
|
||||
:END:
|
||||
Here will be presented what I do to get my system up and running on a fresh
|
||||
Arch Linux install. These installation instructions were written in order to
|
||||
@ -70,7 +69,7 @@
|
||||
|
||||
* Install Arch Linux
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cfe21de6-15fa-477a-a5ff-6cd81dfead19
|
||||
:CUSTOM_ID: Install_Arch_Linux-ac7ad3b2
|
||||
:END:
|
||||
I usually install Arch from the [[https://www.archlinux.org/download/][vanilla ISO]], however I began using [[https://github.com/MatMoul/archfi][archfi]] to
|
||||
install easily the distro (I’ve done it so many times, I know how it works
|
||||
@ -90,7 +89,7 @@
|
||||
|
||||
** Get the latest live system with fast mirrors
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-da7951ee-e39a-4a59-a05d-7b7fffdc7825
|
||||
:CUSTOM_ID: Install_Arch_Linux-Get_the_latest_live_system_with_fast_mirrors-59d2a90d
|
||||
:END:
|
||||
When you boot into the live ISO, execute the following command:
|
||||
#+BEGIN_SRC sh
|
||||
@ -104,7 +103,7 @@
|
||||
|
||||
** Install the system
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9f9e1fe5-4726-486b-9875-5fcfd91d0bb0
|
||||
:CUSTOM_ID: Install_Arch_Linux-Install_the_system-3ff49aa6
|
||||
:END:
|
||||
Then you can use a custom script to ease your installation of Arch if you do
|
||||
not wish to do it manually. Personally, I’ve done it several times already, I
|
||||
@ -125,7 +124,7 @@
|
||||
|
||||
* Install basic packages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d2485595-3014-4151-a76c-63bc353359a8
|
||||
:CUSTOM_ID: Install_basic_packages-c2cfb42d
|
||||
:END:
|
||||
We will need some basic packages in order to run the bootstrap file. So, let’s
|
||||
install =fish= (our shell running the script) and =git=.
|
||||
@ -135,9 +134,9 @@
|
||||
|
||||
* Execute bootstrap
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c13d132f-9e69-4bb0-838b-29c7c5611f11
|
||||
:HEADER-ARGS: :tangle ~/.config/yadm/bootstrap
|
||||
:HEADER-ARGS:python: :tangle no
|
||||
:CUSTOM_ID: Execute_bootstrap-e37054ef
|
||||
:END:
|
||||
=yadm= comes with a very handy feature: its bootstrap script. It can be
|
||||
executed automatically once the dotfiles are cloned with yadm:
|
||||
@ -157,7 +156,7 @@
|
||||
|
||||
** Decrypt private yadm files
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2ce7e756-3dab-4c12-a3b3-d1b6f8d4805d
|
||||
:CUSTOM_ID: Execute_bootstrap-Decrypt_private_yadm_files-68af7157
|
||||
:END:
|
||||
Some private files are stored encrypted in the repository of my yadm
|
||||
dotfiles. I will need them later on during the bootstrap execution.
|
||||
@ -167,7 +166,7 @@
|
||||
|
||||
** Get a correct keyboard layout
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-89fb8f3a-6ec4-4701-a5d9-3e593c47ece9
|
||||
:CUSTOM_ID: Execute_bootstrap-Get_a_correct_keyboard_layout-77d24b30
|
||||
:END:
|
||||
I use mainly the [[https://bepo.fr/wiki/Accueil][bépo]] layout, a French keyboard layout inspired by Dvorak
|
||||
layouts, however I sometimes need to switch back to the standard French
|
||||
@ -193,7 +192,7 @@
|
||||
|
||||
** Set our locale
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-48678405-93ae-41b6-b44b-285ab0da4e92
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_our_locale-e74d772a
|
||||
:END:
|
||||
I use two main locales, the French and US UTF-8 locales, and I like to keep
|
||||
the Japanese locale activated just in case.
|
||||
@ -236,7 +235,7 @@
|
||||
|
||||
** Create some folders
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-85ce90ff-56dc-469b-bf08-480ecf27acc4
|
||||
:CUSTOM_ID: Execute_bootstrap-Create_some_folders-bf701387
|
||||
:END:
|
||||
Let’s create some folders we might need for mounting our drives, Android
|
||||
devices and CDs.
|
||||
@ -253,7 +252,7 @@
|
||||
|
||||
** Set user’s shell to fish
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c1a78394-c156-4a03-ae82-e5e9d4090dab
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_user’s_shell_to_fish-1a794be2
|
||||
:END:
|
||||
First of all, the bootstrap shell will set the user’s shell to fish.
|
||||
#+BEGIN_SRC fish
|
||||
@ -265,7 +264,7 @@
|
||||
|
||||
** Install =yay= if it isn’t already installed
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fef57cea-cf1d-4900-9d90-ec6353ea9661
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_=yay=_if_it_isn’t_already_installed-1e777b8b
|
||||
:END:
|
||||
Now we’ll need to be sure =yay=, our AUR helper, is installed on our system.
|
||||
If it is, we don’t need to to anything. However, if it isn’t, we’ll install
|
||||
@ -286,7 +285,7 @@
|
||||
|
||||
** Install basic packages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-887ec6d4-535d-4363-a0a7-884717b87a47
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_basic_packages-17173316
|
||||
:END:
|
||||
Let’s set in a custom varible what packages we’ll be needing.
|
||||
#+BEGIN_SRC fish
|
||||
@ -339,7 +338,7 @@
|
||||
|
||||
** Tangle configuration files from Org files
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2e4fe0f5-a507-44c5-b69f-1935868b909d
|
||||
:CUSTOM_ID: Execute_bootstrap-Tangle_configuration_files_from_Org_files-cc524361
|
||||
:END:
|
||||
Before tangling our configuration files, we need to create some directories
|
||||
first so our files can be properly tangled. Here’s the list of directories we
|
||||
@ -466,7 +465,7 @@
|
||||
|
||||
** Setting up Emacs: Installing Spacemacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-bd5a92c4-1a4f-49ea-a447-050a4ff0301c
|
||||
:CUSTOM_ID: Execute_bootstrap-Setting_up_Emacs:_Installing_Spacemacs-0b3d44b2
|
||||
:END:
|
||||
Now, the first thing we want to do with Emacs is install its Spacemacs
|
||||
distribution. We’ll clone its =develop= branch into =~/.config/emacs=. We
|
||||
@ -491,11 +490,11 @@
|
||||
|
||||
** Set up dotfiles
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cf2c3a24-b08e-4b07-9d51-31f6df781e62
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_dotfiles-ab372bd9
|
||||
:END:
|
||||
*** Update our dotfiles’ remotes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-18967335-2637-44d6-b407-bb1d2d2718b9
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_dotfiles-Update_our_dotfiles’_remotes-5a0fe6f7
|
||||
:END:
|
||||
This line in the bootstrap script will test if the current user is using my
|
||||
username. If yes, it’s probably me.
|
||||
@ -521,7 +520,7 @@
|
||||
|
||||
*** Get =envtpl=
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-39034878-7864-4a1c-855d-d9882795aac0
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_dotfiles-Get_=envtpl=-fdf53f64
|
||||
:END:
|
||||
Before we set our dotfiles up, let’s make sure =envtpl= is correctly
|
||||
installed. This package will be needed for generating our alt dotfiles.
|
||||
@ -532,7 +531,7 @@
|
||||
|
||||
*** Update our submodules
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ae2f8ccb-a8f3-4699-832c-52cbc8b6d081
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_dotfiles-Update_our_submodules-3e921579
|
||||
:END:
|
||||
Now we can download the various dependencies of our dotfiles. To do so,
|
||||
let’s run the following command:
|
||||
@ -543,14 +542,14 @@
|
||||
|
||||
** Enable some services
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1044da09-e992-4dcb-90ff-513725e1d450
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-3d38d98e
|
||||
:END:
|
||||
We have installed some packages which require some services to run. Let’s
|
||||
enable them.
|
||||
|
||||
*** Systemd-timesyncd
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4f80c250-db6d-4a2b-93bd-5b8a9bb3f4ed
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-Systemd-timesyncd-d887e45b
|
||||
:END:
|
||||
This service enables time syncing with the NTP protocol, so I can be sure my
|
||||
computer’s time is correct. The service first needs to be enabled:
|
||||
@ -567,7 +566,7 @@
|
||||
|
||||
*** Docker
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-429cb31a-fccb-420f-a5aa-21054c45fb38
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-Docker-305e8309
|
||||
:END:
|
||||
First, let’s activate Docker.
|
||||
#+BEGIN_SRC fish
|
||||
@ -586,7 +585,7 @@
|
||||
|
||||
*** Emacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7131fa13-3c6e-4cfc-b8e8-c880de9d380f
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-Emacs-c7785c21
|
||||
:END:
|
||||
Emacs will run as a user service, which means it won’t be launched until we
|
||||
log in.
|
||||
@ -597,7 +596,7 @@
|
||||
|
||||
*** Mpd
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-41a5957e-6aab-4165-8e61-3f99f958fe98
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-Mpd-f0f5b9b7
|
||||
:END:
|
||||
Mpd will also use as a user service in order to get rid of some lines of
|
||||
code in my configuration.
|
||||
@ -609,7 +608,7 @@
|
||||
|
||||
*** SSH server
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1f355779-f1dc-4c0f-9cf1-14724ce05f4d
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-SSH_server-204f5997
|
||||
:END:
|
||||
Maybe we want to activate an SSH server on our machine. If so, we can enable
|
||||
it. Let’s ask the question.
|
||||
@ -623,7 +622,7 @@
|
||||
|
||||
*** Ly
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2785fc5b-cd35-4c99-9f47-3dcbf1a7a870
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-Ly-f4b161c0
|
||||
:END:
|
||||
Ly is a display manager based on ncurses which I find nice enough for me to
|
||||
use (I generally don’t like using display managers). Let’s enable it, and
|
||||
@ -635,7 +634,7 @@
|
||||
|
||||
*** Acpilight
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5423e2a7-d2ce-4bc3-9d5d-85677c18181e
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-Acpilight-39152794
|
||||
:END:
|
||||
=acpilight= is our utility managing the brightness of our screen. There is
|
||||
actually no service to enable here, but we must ensure the user is part of
|
||||
@ -647,7 +646,7 @@
|
||||
|
||||
*** NordVPN
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-49c24a3e-a496-4200-bf64-96e945c203a0
|
||||
:CUSTOM_ID: Execute_bootstrap-Enable_some_services-NordVPN-75c1bd88
|
||||
:END:
|
||||
Thanks to the AUR package ~nordvpn-bin~, I no longer have to manually
|
||||
maintain my VPN connections manually with OpenVPN. However, it requires a
|
||||
@ -658,7 +657,7 @@
|
||||
|
||||
** Symlink some system config files
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b14d7d03-da49-4a7b-ba05-1c0848bd8e44
|
||||
:CUSTOM_ID: Execute_bootstrap-Symlink_some_system_config_files-1dd95175
|
||||
:END:
|
||||
We have some files in [[file:ect/][etc/]] that are to be symlinked to =/etc=.
|
||||
#+BEGIN_SRC fish
|
||||
@ -680,7 +679,7 @@
|
||||
|
||||
** Install packages from git
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e79da7b2-9286-4b66-812e-453e3b2505c7
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_packages_from_git-7c6a6ea4
|
||||
:END:
|
||||
Now, let’s install some packages from git directly.
|
||||
#+BEGIN_SRC fish
|
||||
@ -689,7 +688,7 @@
|
||||
|
||||
*** Polybar Battery
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f228ec52-a7d0-4c16-adfa-75c544fcfa93
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_packages_from_git-Polybar_Battery-074a2cf5
|
||||
:END:
|
||||
Now let’s install =polybar-battery=. This is a binary that I’ll use in my [[file:.config/i3/config][i3
|
||||
config]] to indicate my battery level. It also sends a notification on low
|
||||
@ -712,7 +711,7 @@
|
||||
|
||||
*** Reveal.JS
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-68d1cdb4-1447-420f-ab0c-53ef905e757b
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_packages_from_git-Reveal.JS-bb4da0bf
|
||||
:END:
|
||||
I sometimes use Reveal.JS to make presentations, and I set its location in
|
||||
my [[file:.spacemacs][dotspacemacs]] file to be in =~/fromGIT=, so let’s clone it there.
|
||||
@ -724,7 +723,7 @@
|
||||
|
||||
*** Install powerline fonts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b1414f66-76fa-4287-848a-6facbc09381f
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_packages_from_git-Install_powerline_fonts-293f256c
|
||||
:END:
|
||||
I also need some powerline fonts for my terminal theme.
|
||||
#+BEGIN_SRC fish
|
||||
@ -738,11 +737,11 @@
|
||||
|
||||
** Install Rust
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-57e8af4c-93f2-4145-9c39-a5f8d1c9f012
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_Rust-1839c4d0
|
||||
:END:
|
||||
*** Install the toolchains
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-05ee25dc-3885-46ca-afaf-35bfb2e385d4
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_Rust-Install_the_toolchains-3480764a
|
||||
:END:
|
||||
When using rust, I bounce between two toolchains, the =stable= toolchain and
|
||||
the =nightly= toolchain. To install them, I will use =rustup= which has
|
||||
@ -760,7 +759,7 @@
|
||||
|
||||
*** Install some utilities
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f94f2e18-623f-4aa5-be99-6a7df6a9cbcd
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_Rust-Install_some_utilities-c4a7c785
|
||||
:END:
|
||||
We’ll need some utilities when developing Rust from Emacs, namely =rustfmt=
|
||||
and =racer=. Let’s install them with =cargo=.
|
||||
@ -777,7 +776,7 @@
|
||||
|
||||
** Install some python packages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8155ae1a-0be1-489f-be13-9222f7686fb2
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_some_python_packages-a4447a6f
|
||||
:END:
|
||||
Some packages will be needed from pip in order to get our Emacs setup
|
||||
correctly working. Let’s install them locally for our user:
|
||||
@ -788,7 +787,7 @@
|
||||
|
||||
** Install go packages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8c6e2311-eb84-4bf4-8e0b-948f89bc9664
|
||||
:CUSTOM_ID: Execute_bootstrap-Install_go_packages-fe3e2ff5
|
||||
:END:
|
||||
For go development from Emacs, the Spacemacs go and lsp layers requires some
|
||||
packages to be installed.
|
||||
@ -814,7 +813,7 @@
|
||||
|
||||
** Set up Chicken (Scheme interpreter/compiler)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-10ffb0c0-8028-4e9c-842e-9e7d2c165c5b
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_Chicken_(Scheme_interpreter-compiler)-3c1a3c4a
|
||||
:END:
|
||||
Chicken needs to be set up before being used. First, we need to install its
|
||||
documentation.
|
||||
@ -831,7 +830,7 @@
|
||||
|
||||
** Clean the =pacman= and =yay= cache
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fa5307ec-065b-4d06-9d47-05ccde0da8ac
|
||||
:CUSTOM_ID: Execute_bootstrap-Clean_the_=pacman=_and_=yay=_cache-646cbe36
|
||||
:END:
|
||||
Finally, we are almost done! Let’s clean the cache of =pacman= and =yay=.
|
||||
#+BEGIN_SRC fish
|
||||
@ -841,14 +840,14 @@
|
||||
|
||||
** Set up our fish shell
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f6f4df67-b0de-40bf-95fb-888d42169088
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_our_fish_shell-f0741c22
|
||||
:END:
|
||||
The last thing we want to do is to set up our fish shell with some extensions
|
||||
in order to improve the user experience.
|
||||
|
||||
*** Install =fisher=
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d6490ddc-c909-4713-b36a-19c25a79c7ac
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_our_fish_shell-Install_=fisher=-3a44531b
|
||||
:END:
|
||||
We will be using =fisher= as our extensions manager for Fish. Let’s install
|
||||
it.
|
||||
@ -859,7 +858,7 @@
|
||||
|
||||
*** Install our extensions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3d540273-bdfb-4c63-a05f-2374a010dc29
|
||||
:CUSTOM_ID: Execute_bootstrap-Set_up_our_fish_shell-Install_our_extensions-188e4566
|
||||
:END:
|
||||
I generally use the following extensions in my Fish shell.
|
||||
#+NAME: fish-extensions
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
* Table of Contents :TOC_4_gh:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fe544a28-d8d9-49d3-b5ea-0b828148dbb5
|
||||
:CUSTOM_ID: Table_of_Contents-fcfed7b6
|
||||
:END:
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#configuration][Configuration]]
|
||||
@ -21,7 +21,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ed3ad74a-f67a-4fc2-bb1f-b2cfb38f3ed0
|
||||
:CUSTOM_ID: Introduction-7e535842
|
||||
:END:
|
||||
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
|
||||
@ -31,7 +31,7 @@
|
||||
|
||||
* Configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-76aa0ff6-9e6a-4a35-974f-9132b08c8eb4
|
||||
: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
|
||||
@ -52,7 +52,7 @@
|
||||
|
||||
** Keys behavior
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0f092122-dd91-40e0-8e02-b732a8d5485f
|
||||
: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
|
||||
@ -64,7 +64,7 @@
|
||||
|
||||
** Search
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-edff993e-54f5-42c6-8a45-e5a7194adf57
|
||||
:CUSTOM_ID: Configuration-Search-6e458076
|
||||
:END:
|
||||
Do case-unsensitive searches by default.
|
||||
#+BEGIN_SRC conf
|
||||
@ -79,7 +79,7 @@
|
||||
|
||||
** Visual settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f4d533e9-a86d-4b6e-b601-28536267f7ab
|
||||
: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
|
||||
@ -113,7 +113,7 @@
|
||||
|
||||
** Whitespace settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-24190b41-8efe-4dfd-ac4b-0f5614b8c9e0
|
||||
:CUSTOM_ID: Configuration-Whitespace_settings-8cef9cd7
|
||||
:END:
|
||||
Convert typed tabs to spaces. Sue me.
|
||||
#+BEGIN_SRC conf
|
||||
@ -141,7 +141,7 @@
|
||||
|
||||
** Included configuration file
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-491cba80-5fa9-4b75-a9cb-2865ec39440a
|
||||
: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
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
* Table of Contents :TOC_4_gh:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b2167b42-e88d-4308-abaf-d33eeec63fff
|
||||
:CUSTOM_ID: Table_of_Contents-8c590c64
|
||||
:END:
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#core-ncmpcpp-settings][Core Ncmpcpp settings]]
|
||||
@ -18,7 +18,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7ead0ad9-857d-4179-9e02-be0f8f8c02ef
|
||||
: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
|
||||
@ -32,7 +32,7 @@
|
||||
|
||||
* Core Ncmpcpp settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-02b8e820-d12d-479f-a856-86121eccab96
|
||||
:CUSTOM_ID: Core_Ncmpcpp_settings-8cacae18
|
||||
:END:
|
||||
#+BEGIN_SRC conf :exports none
|
||||
# -*- mode: conf -*-
|
||||
@ -40,7 +40,7 @@
|
||||
|
||||
** Directories
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0da83a89-b409-4e48-9bd7-3db9afed4945
|
||||
: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
|
||||
@ -57,7 +57,7 @@
|
||||
|
||||
** MPD
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cc81e6db-7418-4823-b2b4-4c3f1e842eaa
|
||||
: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
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1b7321bc-190e-41a7-a6e0-ff13e9a61b74
|
||||
:CUSTOM_ID: Introduction-a7a859ac
|
||||
: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
|
||||
@ -27,7 +27,7 @@
|
||||
|
||||
* The ~print_info~ functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3a3a5ade-adab-4508-9aa9-17896126b169
|
||||
:CUSTOM_ID: The_~print_info~_functions-afbafdc3
|
||||
: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
|
||||
@ -106,7 +106,7 @@
|
||||
|
||||
* Information settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d1ddb7fc-e87a-42d1-a71b-6fc7b10c9f78
|
||||
:CUSTOM_ID: Information_settings-7d3a990e
|
||||
: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
|
||||
@ -116,15 +116,15 @@
|
||||
|
||||
** Software
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2f562a5c-3530-4b50-b553-a0cb801affea
|
||||
:CUSTOM_ID: Information_settings-Software-7b13b829
|
||||
:END:
|
||||
*** OS
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-afe50abf-8988-48dd-9768-72eb0143b613
|
||||
:CUSTOM_ID: Information_settings-Software-OS-7019c112
|
||||
:END:
|
||||
**** Kernel
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-be4b75c8-2612-4e40-933f-bd451bd6fc5e
|
||||
:CUSTOM_ID: Information_settings-Software-OS-Kernel-df1062f0
|
||||
:END:
|
||||
The variable below can shorten the output ofh the ~kernel~ function.
|
||||
- Default value :: ~"on"~
|
||||
@ -142,7 +142,7 @@
|
||||
|
||||
**** Distro
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-979a15ac-c2ac-41a4-91f2-5676feba6dd4
|
||||
:CUSTOM_ID: Information_settings-Software-OS-Distro-3c8118d9
|
||||
:END:
|
||||
This variable can shorten the output of the ~distro~ function.
|
||||
- Default value :: ~"on"~
|
||||
@ -160,7 +160,7 @@
|
||||
|
||||
**** OS Architecture
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c621c645-f926-411f-852c-9b4508a0736a
|
||||
:CUSTOM_ID: Information_settings-Software-OS-OS_Architecture-1164eea9
|
||||
:END:
|
||||
This variable can show or hide the OS architecture in the ~distro~ output.
|
||||
- Default value :: ~"off"~
|
||||
@ -177,7 +177,7 @@
|
||||
|
||||
*** Uptime shorthand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-41f62c23-4306-4828-a824-7a33e19deee5
|
||||
:CUSTOM_ID: Information_settings-Software-Uptime_shorthand-70ff185a
|
||||
:END:
|
||||
This variable can shorten the output of the ~uptime~ function. ~on~ shortens
|
||||
it a bit, while ~tiny~ shortens it greatly.
|
||||
@ -197,11 +197,11 @@
|
||||
|
||||
*** Shell
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-759202dd-43a9-477f-8d11-df1790870673
|
||||
:CUSTOM_ID: Information_settings-Software-Shell-b958db2a
|
||||
:END:
|
||||
**** Shell path
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-dd92a375-1fa1-4e46-9427-503c03b83b83
|
||||
:CUSTOM_ID: Information_settings-Software-Shell-Shell_path-fff91e35
|
||||
:END:
|
||||
This allows to show either the path of the user’s shell, or simply its
|
||||
name.
|
||||
@ -219,7 +219,7 @@
|
||||
|
||||
**** Shell version
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-636dfde0-f0d1-4166-870c-8f1ff31b6dc2
|
||||
:CUSTOM_ID: Information_settings-Software-Shell-Shell_version-a1702748
|
||||
:END:
|
||||
This allows to show the shell’s version in the output of ~shell~.
|
||||
- Default value :: ~"on"~
|
||||
@ -236,7 +236,7 @@
|
||||
|
||||
*** Theming
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e2ee7a72-d852-436d-b610-946508597696
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-44dc624d
|
||||
: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
|
||||
@ -244,7 +244,7 @@
|
||||
|
||||
**** Shorten output
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-19994d7e-908b-4e20-912c-a527eee19668
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-Shorten_output-bdb4af3f
|
||||
:END:
|
||||
With this value, it is possible to shorten the output of the computer’s
|
||||
theming.
|
||||
@ -262,7 +262,7 @@
|
||||
|
||||
**** Enable or disable theming display for GTK2
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c9bf1b93-ec7b-4c48-b9f8-5d44edbcb8bc
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-Enable_or_disable_theming_display_for_GTK2-6bfd9cf8
|
||||
:END:
|
||||
It is possible to explicitely show or hide the computer’s theming with GTK2
|
||||
with this variable.
|
||||
@ -280,7 +280,7 @@
|
||||
|
||||
**** Enable or disable theming display for GTK3
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6d367bd6-bb5c-469c-bfd7-145ef0ecd6d9
|
||||
:CUSTOM_ID: Information_settings-Software-Theming-Enable_or_disable_theming_display_for_GTK3-7dde3690
|
||||
:END:
|
||||
The same variable as above is also available for GTK3.
|
||||
- Default value :: ~"on"~
|
||||
@ -296,7 +296,7 @@
|
||||
|
||||
*** IP address
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2ec1b0c8-1663-4afa-bf91-b2dc811ba95b
|
||||
:CUSTOM_ID: Information_settings-Software-IP_address-66efe064
|
||||
: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
|
||||
@ -322,16 +322,16 @@
|
||||
|
||||
** Hardware
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d7f87860-5c1d-427b-9d2e-f7674d9fbab5
|
||||
:CUSTOM_ID: Information_settings-Hardware-490075ce
|
||||
:END:
|
||||
*** CPU
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b2183b8b-de13-4812-a7da-9f2d4d66e42d
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-dfa36b11
|
||||
:END:
|
||||
|
||||
**** CPU brand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7300f2bb-e8d2-4ede-8765-a6e8883af99e
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_brand-12ceb9ce
|
||||
:END:
|
||||
With this variables, it is possible to show or hide the brand of a CPU in
|
||||
the ~cpu~ output.
|
||||
@ -349,7 +349,7 @@
|
||||
|
||||
**** CPU speed
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5cd70ef6-4ba3-45a3-a46e-ec2d5b76d36a
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_speed-86e4ea04
|
||||
:END:
|
||||
With this variable, it is possible to show or hide the speed of the CPU.
|
||||
- Default value :: ~"on"~
|
||||
@ -366,7 +366,7 @@
|
||||
|
||||
**** CPU speed type
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-61affc64-b69d-44f2-b950-1623cd908b6a
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_speed_type-4380a471
|
||||
: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
|
||||
@ -385,7 +385,7 @@
|
||||
|
||||
**** CPU speed shorthand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6138e3bd-937f-4604-b2c0-db0a49b869bc
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_speed_shorthand-8000dc1f
|
||||
:END:
|
||||
This value allows to show sorter CPU speed with less digits. This flag is
|
||||
not supported in systems with CPU speed below 1GHz.
|
||||
@ -403,7 +403,7 @@
|
||||
|
||||
**** CPU cores
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-eea09747-5334-49af-aef3-1a29f59ea40e
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_cores-66e72a57
|
||||
:END:
|
||||
With this variable, it is possible to display the number of cores that are
|
||||
available in the CPU.
|
||||
@ -424,7 +424,7 @@
|
||||
|
||||
**** CPU temperature
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-66633b86-2427-4079-9e62-e72b3d458a21
|
||||
:CUSTOM_ID: Information_settings-Hardware-CPU-CPU_temperature-c79fb1a1
|
||||
: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
|
||||
@ -447,7 +447,7 @@
|
||||
|
||||
*** GPU
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6138e3bd-937f-4604-b2c0-db0a49b869bc
|
||||
:CUSTOM_ID: Information_settings-Hardware-GPU-f9450397
|
||||
: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
|
||||
@ -455,7 +455,7 @@
|
||||
|
||||
**** GPU brand
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d2a0a4dd-7dc4-4584-8093-ce417b4bb59b
|
||||
:CUSTOM_ID: Information_settings-Hardware-GPU-GPU_brand-c8d3c67d
|
||||
:END:
|
||||
This value allows the user to hide or show the brand of their GPU in the
|
||||
output of ~gpu~.
|
||||
@ -474,7 +474,7 @@
|
||||
|
||||
**** Which GPU to display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4309d902-fc80-48c9-be89-02b932d1f650
|
||||
:CUSTOM_ID: Information_settings-Hardware-GPU-Which_GPU_to_display-a6f72453
|
||||
:END:
|
||||
This allows the user to choose which GPU appears in the output of the
|
||||
function ~gpu~.
|
||||
@ -499,7 +499,7 @@
|
||||
|
||||
*** Resolution
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9803fa70-bf09-400a-800f-071de9f2d91d
|
||||
:CUSTOM_ID: Information_settings-Hardware-Resolution-f8a0316b
|
||||
: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.
|
||||
@ -518,6 +518,6 @@
|
||||
|
||||
*** Disks
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-87ce5b65-ae28-49a8-a91b-ed7a38ccc8b4
|
||||
:CUSTOM_ID: Information_settings-Hardware-Disks-48e9e728
|
||||
:END:
|
||||
Neofetch can display the space available and the total space of disks
|
||||
|
@ -9,9 +9,8 @@
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f61204c4-beb8-4008-b02e-55eae4e8f163
|
||||
:CUSTOM_ID: Table_of_Contents-71903d94
|
||||
:END:
|
||||
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#shadows][Shadows]]
|
||||
- [[#deprecated-options][Deprecated options]]
|
||||
@ -24,7 +23,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2280c387-9a3a-4df1-a101-3be4fbc7cef4
|
||||
: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
|
||||
@ -33,7 +32,7 @@
|
||||
|
||||
* Shadows
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8fb60f60-8ba6-40cc-881b-a2a77b51e954
|
||||
: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
|
||||
@ -109,8 +108,8 @@
|
||||
|
||||
** Deprecated options
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c00a180b-abdc-48df-ba1e-17c486934274
|
||||
:HEADER-ARGS:conf: :tangle no
|
||||
:CUSTOM_ID: Shadows-Deprecated_options-da215d5a
|
||||
:END:
|
||||
Options in this subheader *will not* be exported to my configuration file.
|
||||
|
||||
@ -148,7 +147,7 @@
|
||||
|
||||
* Rounded corners
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c4fd6ef1-d22e-40a1-af15-dc6e83f6c899
|
||||
: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 [[#h-e40a644d-b594-41f0-9aca-307f77c456ba][here]]) from
|
||||
@ -167,7 +166,7 @@
|
||||
|
||||
* Fading
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-650f6479-4579-4114-9732-dfaabe7e1d22
|
||||
: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
|
||||
@ -217,7 +216,7 @@
|
||||
|
||||
* Transparency and opacity
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7c4d53bd-ea82-4800-89be-f528f3ff1208
|
||||
: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
|
||||
@ -301,7 +300,7 @@
|
||||
|
||||
* Background blurring
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e40a644d-b594-41f0-9aca-307f77c456ba
|
||||
:CUSTOM_ID: Background_blurring-55835066
|
||||
:END:
|
||||
The following are the parameters for background blurring, see the \*BLUR\*
|
||||
section for more information.
|
||||
@ -356,7 +355,7 @@
|
||||
#+END_SRC
|
||||
* General settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-09a57a66-f298-4e04-880a-6d4dbb00a28a
|
||||
:CUSTOM_ID: General_settings-41398de7
|
||||
:END:
|
||||
Daemonize process. Fork to background after initialization. Causes issues
|
||||
with certain (badly-written) drivers.
|
||||
@ -624,7 +623,7 @@
|
||||
|
||||
** GLX backend-specific options
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6aca0f58-6d9e-4bb7-ba88-5195b573ee01
|
||||
: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
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
* Table of Contents :TOC_4_gh:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c7ab05d0-4c5f-4a4c-8603-4c79e264141c
|
||||
:CUSTOM_ID: Table_of_Contents-21ef28f2
|
||||
:END:
|
||||
- [[#presentation][Presentation]]
|
||||
- [[#general-settings][General settings]]
|
||||
@ -55,7 +55,7 @@
|
||||
|
||||
* Presentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-03c830ff-e6a9-426c-8d98-8ffb8a79b1d1
|
||||
:CUSTOM_ID: Presentation-4e723f32
|
||||
:END:
|
||||
Polybar is a desktop utility for displaying various information in form of
|
||||
bars for GNU/Linux systems. It is often used as a replacement for native bars
|
||||
@ -75,7 +75,7 @@
|
||||
|
||||
* General settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c4387167-95ea-4349-a5d9-4ebdcffccc97
|
||||
:CUSTOM_ID: General_settings-e02fb78c
|
||||
:END:
|
||||
Some general settings are available for Polybar, and they are declared under
|
||||
the ~[settings]~ section.
|
||||
@ -98,7 +98,7 @@
|
||||
|
||||
* Colors declaration for polybar
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7adb4647-995d-4f75-846c-6f7f3e15487a
|
||||
:CUSTOM_ID: Colors_declaration_for_polybar-75ee0b65
|
||||
:END:
|
||||
#+BEGIN_SRC conf-windows :exports none
|
||||
; -*- mode: conf-windows -*-
|
||||
@ -137,7 +137,7 @@
|
||||
|
||||
* Declaration of the bars
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9c14f550-d104-4b45-a7a4-04a6f2c32e00
|
||||
:CUSTOM_ID: Declaration_of_the_bars-a95135a3
|
||||
:END:
|
||||
It is possible in i3 to declare as many bars as we wish, and each of these
|
||||
bars will be named. Naming the bar is done in its module declaration like so:
|
||||
@ -149,7 +149,7 @@
|
||||
|
||||
** Top bar declaration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ff6e9020-b3d9-4da9-b351-29a4b914d3c4
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Top_bar_declaration-fc0cd977
|
||||
:END:
|
||||
As unimaginative as it might seem, I went for a rather explicit name for my
|
||||
bars. The top one is simply named ~top~, as shown below.
|
||||
@ -159,7 +159,7 @@
|
||||
|
||||
*** Positioning
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6c670bf7-0904-4b5c-8551-540212f16e25
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Top_bar_declaration-Positioning-2505760c
|
||||
:END:
|
||||
We need to set on which screen the bar is to be displayed. Indeed, it is
|
||||
possible to display a bar on only one specific screen if we wish to.
|
||||
@ -217,7 +217,7 @@
|
||||
|
||||
*** Colors and display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9f83a6fd-652a-45ca-894b-0a0e0d3f0084
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Top_bar_declaration-Colors_and_display-30f12652
|
||||
:END:
|
||||
As explained above, we declared some global variables when it comes to
|
||||
colors, and this is where they will be used. The bar’s background will be of
|
||||
@ -252,7 +252,7 @@
|
||||
|
||||
*** Fonts and locale
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c5660945-4785-40f7-b89e-f9f31b85a062
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Top_bar_declaration-Fonts_and_locale-70a25466
|
||||
:END:
|
||||
Now we can chose which font fill be used in order to display text in this
|
||||
bar, as well as the locale we want. The locale will be useful for displaying
|
||||
@ -302,7 +302,7 @@
|
||||
|
||||
*** Modules
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-93f91f00-620c-4d09-846b-9e40c304fdaf
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Top_bar_declaration-Modules-18979638
|
||||
:END:
|
||||
Finally, arguably one of the most important parts of our bar configuration:
|
||||
the module selection. Modules can be positioned in three different parts of
|
||||
@ -340,7 +340,7 @@
|
||||
|
||||
** Bottom bar declaration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2478b0a6-1727-45fb-b8df-3f9aac2f0f5f
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Bottom_bar_declaration-8504b5ec
|
||||
:END:
|
||||
As described above, we will once again have to declare our bar with an
|
||||
equally unimaginative but explicit name.
|
||||
@ -350,7 +350,7 @@
|
||||
|
||||
*** Positioning
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-31291b7e-d1df-493a-bcb2-8decab434044
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Bottom_bar_declaration-Positioning-b1883756
|
||||
:END:
|
||||
The variables are the same as above, but two of them will be slightly
|
||||
modified:
|
||||
@ -391,7 +391,7 @@
|
||||
|
||||
*** Colors and display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3ec14c14-fd68-449a-b4a8-47d1c8279242
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Bottom_bar_declaration-Colors_and_display-854aae82
|
||||
:END:
|
||||
Nothing changes from the top bar, all the variables stay with the same
|
||||
values. See [[#h-9f83a6fd-652a-45ca-894b-0a0e0d3f0084][Colors and display]] of the top bar for more information.
|
||||
@ -403,7 +403,7 @@
|
||||
|
||||
*** Fonts and locale
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-518c6613-b0b0-4d5b-a854-a26b3feefaab
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Bottom_bar_declaration-Fonts_and_locale-67459d62
|
||||
:END:
|
||||
Again, nothing changes from the top bar, so for more info on what’s going
|
||||
on, see [[#h-c5660945-4785-40f7-b89e-f9f31b85a062][Fonts and locale]] of the top bar.
|
||||
@ -414,7 +414,7 @@
|
||||
|
||||
*** Modules
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-57e48e86-e468-4d71-b088-c9d31d36ec27
|
||||
:CUSTOM_ID: Declaration_of_the_bars-Bottom_bar_declaration-Modules-702b21fc
|
||||
:END:
|
||||
Now, we can get to something interesting again: modules. This bar has a lot
|
||||
more modules than the top bar. Here is the list of the modules we have on
|
||||
@ -445,7 +445,7 @@
|
||||
|
||||
* Modules
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7b18b41a-e7d2-4028-8185-4ba732603392
|
||||
:CUSTOM_ID: Modules-2e1a51bc
|
||||
:END:
|
||||
Before we begin to describe the different modules, I would like to point out
|
||||
something that will be repeated multiple times if I don’t talk about it right
|
||||
@ -464,11 +464,11 @@
|
||||
|
||||
** Hardware
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-52212ebe-82c1-4663-9b36-61cfb990ac04
|
||||
:CUSTOM_ID: Modules-Hardware-26426ebd
|
||||
:END:
|
||||
*** Battery
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1a177975-be38-44c2-bac7-9743dae1ef69
|
||||
:CUSTOM_ID: Modules-Hardware-Battery-299f2e42
|
||||
:END:
|
||||
This module allows the user to get a battery widget among the polybar
|
||||
modules that will also send a notification to the user if the battery level
|
||||
@ -502,7 +502,7 @@
|
||||
|
||||
*** Filesystem
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e007ebb2-bc1a-4e1d-84e7-1332a4682511
|
||||
:CUSTOM_ID: Modules-Hardware-Filesystem-26f0a3c6
|
||||
:END:
|
||||
This module allows to display information about our filesystem, including
|
||||
(and this is what I use this module for) displaying the used space and
|
||||
@ -563,7 +563,7 @@
|
||||
|
||||
*** Xbacklight
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8c6dd375-381c-47c4-861d-fda6e7283e9e
|
||||
:CUSTOM_ID: Modules-Hardware-Xbacklight-2901c504
|
||||
:END:
|
||||
This module is used in order to display the level of brightness of a screen.
|
||||
It is not used by itself, but rather by other modules, such as [[#h-9adad94d-961c-44a7-aed1-91a8f22b4eef][ACPI
|
||||
@ -581,7 +581,7 @@
|
||||
|
||||
*** ACPI backlight
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9adad94d-961c-44a7-aed1-91a8f22b4eef
|
||||
:CUSTOM_ID: Modules-Hardware-ACPI_backlight-9eaeaa79
|
||||
:END:
|
||||
This module indicates the backlight level of a screen thanks to the ACPI
|
||||
Linux module. There isn’t much to tell about the module itself other than it
|
||||
@ -596,7 +596,7 @@
|
||||
|
||||
*** CPU
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-058d538f-e361-44d5-ae0f-cb4e36109f5f
|
||||
:CUSTOM_ID: Modules-Hardware-CPU-365dcb98
|
||||
:END:
|
||||
This module indicates how much of the CPU is being used. As shown below, I
|
||||
made it so we can see the load on each core. The first thing to do is to
|
||||
@ -635,7 +635,7 @@
|
||||
|
||||
*** Memory
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fd9cd09c-eed7-4fc3-8c10-aaa4364fea0f
|
||||
:CUSTOM_ID: Modules-Hardware-Memory-2f2f9475
|
||||
:END:
|
||||
Similarly to the CPU module, it is possible for Polybar to display the RAM
|
||||
load of the computer. As above, let’s declare this module as an internal
|
||||
@ -664,7 +664,7 @@
|
||||
|
||||
*** Wlan
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fc269c9f-4a4c-4260-aa20-cae93d5f377f
|
||||
:CUSTOM_ID: Modules-Hardware-Wlan-3457f36b
|
||||
:END:
|
||||
It is possible for Polybar to display the name of the current WiFi network
|
||||
the computer is connected to. For that, we first need to declare the Wlan
|
||||
@ -703,7 +703,7 @@
|
||||
|
||||
*** Ethernet
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-99a35d25-f49e-4261-9a93-981d67e289f6
|
||||
:CUSTOM_ID: Modules-Hardware-Ethernet-dc749304
|
||||
:END:
|
||||
Just like any other module, the ethernet module has to be declared as an
|
||||
internal module.
|
||||
@ -741,7 +741,7 @@
|
||||
|
||||
*** Volume
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b93216f3-1a1b-438d-a82d-3b86796ff2d8
|
||||
:CUSTOM_ID: Modules-Hardware-Volume-ebf9f7a4
|
||||
:END:
|
||||
The volume module in Polybar is linked to its internal bindings to ALSA.
|
||||
Let’s declare it accordingly.
|
||||
@ -772,7 +772,7 @@
|
||||
|
||||
*** Temperature
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-dd6a6310-1841-4db8-a59f-7445b079060e
|
||||
:CUSTOM_ID: Modules-Hardware-Temperature-a9f08cde
|
||||
:END:
|
||||
The temperature module checks the temperature of the CPU, and warns the user
|
||||
above a certain threshold of heat, in my case if my CPU is above 60°C.
|
||||
@ -801,11 +801,11 @@
|
||||
|
||||
** Software
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-359b340e-e332-45b1-bb13-0d50baf1d9d2
|
||||
:CUSTOM_ID: Modules-Software-f6529189
|
||||
:END:
|
||||
*** Window title
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7068e4d4-069b-46e8-946e-ed012329648a
|
||||
:CUSTOM_ID: Modules-Software-Window_title-3f931641
|
||||
:END:
|
||||
This module’s aim is to simply provide the name of the currently focused
|
||||
window given by Xorg. This module is an internal module to polybar, that is
|
||||
@ -829,7 +829,7 @@
|
||||
|
||||
*** i3
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-105fbca2-4f65-4e22-a663-5b0568f60016
|
||||
:CUSTOM_ID: Modules-Software-i3-db36ddfb
|
||||
:END:
|
||||
Now comes the module for i3 interaction. Thanks to this module, it is
|
||||
possible to show which workspaces are active and focused, and it is possible
|
||||
@ -894,7 +894,7 @@
|
||||
|
||||
**** Workspace icons
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-300a226b-1b3e-49aa-93c2-325ee26e8e1f
|
||||
:CUSTOM_ID: Modules-Software-i3-Workspace_icons-89237191
|
||||
:END:
|
||||
Now, let’s name our workspaces. We can give them whatever name we want them
|
||||
to have, but I just like the aesthetics of Japanese characters, so let’s go
|
||||
@ -946,7 +946,7 @@
|
||||
|
||||
**** Focused workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4bb8a657-021a-4d0a-b1e1-2e6b34c9f044
|
||||
:CUSTOM_ID: Modules-Software-i3-Focused_workspaces-0ca3b93d
|
||||
:END:
|
||||
Now we can define the label itself. First, we will need to define the label
|
||||
when the workspace is focused. We’ll simply take the alternative background
|
||||
@ -962,7 +962,7 @@
|
||||
|
||||
**** Visible workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5fbaf3dc-f2f6-463d-9c8e-dd649af7c0a3
|
||||
:CUSTOM_ID: Modules-Software-i3-Visible_workspaces-4be78e50
|
||||
:END:
|
||||
The ~visible~ label is related to the ~focused~ labels since it is
|
||||
describing workspaces that can be seen, but are not currently focused, i.e.
|
||||
@ -980,7 +980,7 @@
|
||||
|
||||
**** Unfocused workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-26d9b2a6-7d01-462e-b144-8ee533324596
|
||||
:CUSTOM_ID: Modules-Software-i3-Unfocused_workspaces-13063042
|
||||
:END:
|
||||
When it comes to the unfocused label, there won’t be any custom background
|
||||
or underline, so we’ll just copy the two remaining lines from the focused
|
||||
@ -992,7 +992,7 @@
|
||||
|
||||
**** Urgent workspaces
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-86b42ade-e5e1-47d0-8436-9e072450ccc2
|
||||
:CUSTOM_ID: Modules-Software-i3-Urgent_workspaces-ed2bd93c
|
||||
:END:
|
||||
Lastly, we get our urgent workspaces: workspaces in which most of the time
|
||||
it’s just a popup that appeared or a software that finally launched itself
|
||||
@ -1008,7 +1008,7 @@
|
||||
|
||||
*** Mpd
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e51852fe-5d09-4126-aec3-48c16aa9a093
|
||||
:CUSTOM_ID: Modules-Software-Mpd-4b1ec78e
|
||||
:END:
|
||||
Mpd is a music server for GNU/Linux systems that interfaces will several
|
||||
front-ends, including ncmpcpp (the main one I use), ncmpcpp and mpc. It also
|
||||
@ -1049,7 +1049,7 @@
|
||||
|
||||
*** Date
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-18354316-7e52-4e24-b4a0-961b6c959ace
|
||||
:CUSTOM_ID: Modules-Software-Date-f7338626
|
||||
:END:
|
||||
This module is really simple: it gives the current date. It is an internal
|
||||
module, and as declared below, it updates every second:
|
||||
@ -1086,7 +1086,7 @@
|
||||
|
||||
* Footnotes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6d9948e4-8a08-4245-929b-de1b52cecb64
|
||||
:CUSTOM_ID: Footnotes-62d05520
|
||||
:END:
|
||||
|
||||
[fn:1] [[https://github.com/polybar/polybar/wiki/Fonts][https://github.com/polybar/polybar/wiki/Fonts]]
|
||||
|
@ -7,9 +7,9 @@
|
||||
#+PROPERTY: header-args:toml :tangle ~/.rustfmt.toml
|
||||
#+STARTUP: content
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0871ece1-3315-4853-88ee-26b83530b95a
|
||||
:CUSTOM_ID: Table_of_Contents-1f5472ca
|
||||
:END:
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#general-settings][General settings]]
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c2854002-b43e-4d65-83a2-e7cbb96af409
|
||||
: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
|
||||
@ -28,7 +28,7 @@
|
||||
|
||||
* General settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3d97602e-1562-44eb-b673-55b677eda1c2
|
||||
:CUSTOM_ID: General_settings-7f5cb2f6
|
||||
:END:
|
||||
First, we are using the 2018 edition of Rust.
|
||||
#+BEGIN_SRC toml
|
||||
@ -57,7 +57,7 @@
|
||||
|
||||
* Structs and Enums
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a6ec06c9-be62-464e-8b52-59019bbe5f7f
|
||||
: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
|
||||
@ -81,7 +81,7 @@
|
||||
|
||||
* Comments
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d3f4dcf6-c910-4716-a531-a628a53c2858
|
||||
:CUSTOM_ID: Comments-b1904bb0
|
||||
:END:
|
||||
Convert ~/* */~ comments to ~//~ comments where possible.
|
||||
#+BEGIN_SRC toml
|
||||
@ -105,7 +105,7 @@
|
||||
|
||||
* Documentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-24aa1f8c-02f5-4add-b1af-d406eecfef25
|
||||
:CUSTOM_ID: Documentation-0c7981c7
|
||||
:END:
|
||||
Format code snippet included in doc comments.
|
||||
#+BEGIN_SRC toml
|
||||
@ -119,7 +119,7 @@
|
||||
|
||||
* Whitespace
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ad416728-7920-49fa-abdc-92cd5ceebc5a
|
||||
:CUSTOM_ID: Whitespace-e8792b44
|
||||
:END:
|
||||
|
||||
Use tab characters for indentation, spaces for alignment.
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
* Table of Contents :TOC:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f61204c4-beb8-4008-b02e-55eae4e8f163
|
||||
:CUSTOM_ID: Table_of_Contents-baac29af
|
||||
:END:
|
||||
- [[#introduction][Introduction]]
|
||||
- [[#spacemacs-layers-and-packages][Spacemacs layers and packages]]
|
||||
@ -131,7 +131,7 @@
|
||||
|
||||
* Introduction
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ff1cbbaa-6ab0-49ab-8945-7e25706ead8e
|
||||
:CUSTOM_ID: Introduction-f1cbb8bb
|
||||
:END:
|
||||
This file is the main source file for my Emacs configuration which contains
|
||||
most of the user code. It is exported thanks to Emacs’ code tangling from the
|
||||
@ -145,7 +145,7 @@
|
||||
* Spacemacs layers and packages
|
||||
:PROPERTIES:
|
||||
:header-args:emacs-lisp: :comments link :tangle ~/.config/emacs/private/spacemacs-layers.el :exports code :results silent
|
||||
:CUSTOM_ID: h-9d9869e0-4672-419c-bf37-3d3ae1b7c0aa
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-6d318b87
|
||||
:END:
|
||||
Here will be our layer configuration set. Everything here is set with a
|
||||
~setq-default~ in the ~dotspacemacs/layers~ function like so:
|
||||
@ -158,7 +158,7 @@
|
||||
|
||||
** General configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ecfe1909-18af-451d-b78f-0d7e5a1d45c0
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-General_configuration-66b4311e
|
||||
:END:
|
||||
First, we need to tell Spacemacs which base distribution we are using. This
|
||||
is a layer contained in the directory ~+distribution~. For now, available
|
||||
@ -189,7 +189,7 @@
|
||||
|
||||
** Package management
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-587fd3fb-5a99-4c19-af02-b1553c6acfae
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Package_management-0add1a62
|
||||
:END:
|
||||
It is possible to indicate to Spacemacs a list of additional paths where to
|
||||
look for configuration layers. Paths must have a trailing slash, i.e.
|
||||
@ -266,7 +266,7 @@
|
||||
|
||||
** Layers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-313bf79e-c24c-40a6-8bc0-eb608fda05d9
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-36e1c90c
|
||||
:END:
|
||||
All layers are set one variable: ~dotspacemacs-configuration-layers~. This
|
||||
variable is a list of layers, some of them will have some custom variables.
|
||||
@ -289,7 +289,7 @@
|
||||
|
||||
*** Checkers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-04664b1a-8138-4566-8b63-8050437351a7
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Checkers-aefeae26
|
||||
:END:
|
||||
The two first checkers I use are for spell and syntax checking.
|
||||
~spell-checking~ is disabled by default, however it should auto-detect the
|
||||
@ -303,7 +303,7 @@
|
||||
|
||||
*** Completion
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fc18dd98-1411-4516-a87c-6c1047d2a13c
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Completion-883e2b83
|
||||
:END:
|
||||
~auto-completion~ is a layer enabled in order to provide auto-completion to
|
||||
all supported language layers. It is set so that the =RET= key has no
|
||||
@ -328,7 +328,7 @@
|
||||
|
||||
*** Email
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0db2333c-86bf-4b41-8226-da66885fce36
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Email-67c16308
|
||||
:END:
|
||||
I use as my daily Email client ~mu4e~, so let’s enable it and tell Emacs
|
||||
where mu4e is installed. I also tell mu4e to use maildirs extensions, use
|
||||
@ -343,7 +343,7 @@
|
||||
|
||||
*** Emacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ad6174a6-4056-420e-9620-3da5f00bd3fc
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Emacs-8e976e5c
|
||||
:END:
|
||||
The first layer enabled in this category is ~better-defaults~. I also made
|
||||
it so that when a command equivalent to ~C-a~ or ~C-e~ is pressed, the
|
||||
@ -387,7 +387,7 @@
|
||||
|
||||
*** File trees
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-35f135ac-45cd-4e91-a23d-41700dc7495f
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-File_trees-5b6ed3e4
|
||||
:END:
|
||||
In this category, I only enabled one layer: ~treemacs~. In this layer, I set
|
||||
is so that treemacs syncs with my current buffer, and it automatically
|
||||
@ -401,7 +401,7 @@
|
||||
|
||||
*** Fonts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7a0a7d6d-6caa-4504-acf6-f97c25436ef1
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Fonts-11de8977
|
||||
:END:
|
||||
In this category, again, one layer is enabled: ~unicode-fonts~. This layer
|
||||
addssupport for the ~unicode-fonts~ package.
|
||||
@ -411,7 +411,7 @@
|
||||
|
||||
*** Fun
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3aec0cda-50d5-4c31-a57e-4244a254a57f
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Fun-0728c04c
|
||||
:END:
|
||||
In this category, I only enabled two layers: ~selectric~ and ~xkcd~.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -420,7 +420,7 @@
|
||||
|
||||
*** Internationalization
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0edb1ff3-15a1-46cd-b980-7fdd124020b6
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Internationalization-69601ff8
|
||||
:END:
|
||||
In this category, I enabled the ~keyboard-layout~ layer to enable
|
||||
compatibility with the bépo layout. This layer, however, is disabled for
|
||||
@ -433,11 +433,11 @@
|
||||
|
||||
*** Programming languages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9dd88370-a959-4266-a01e-2231f9008a1f
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Programming_languages-4c318b81
|
||||
:END:
|
||||
**** Domain-specific (DSLs)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c212d89f-6854-48f3-84a5-8195811bfc4d
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Programming_languages-Domain-specific_(DSLs)-2c919937
|
||||
:END:
|
||||
In this category, I enabled support for the R programming language (the
|
||||
~ess~ layer), the ~major-modes~ layer for the Arch Linux PKGBUILDs support,
|
||||
@ -504,7 +504,7 @@
|
||||
|
||||
**** Frameworks
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ac43dd9a-5a2f-4a80-bb35-535ec6e31e72
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Programming_languages-Frameworks-f7c21585
|
||||
:END:
|
||||
Only one framework support has been enabled so far, and is is for the
|
||||
Django framework.
|
||||
@ -514,7 +514,7 @@
|
||||
|
||||
**** General-purpose
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9d41427d-ec93-40c6-8c24-113c5b174fc3
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Programming_languages-General-purpose-1ed71a5b
|
||||
:END:
|
||||
Among the layers I activated, the only one without any specific
|
||||
configuration is the ~asm~ layer for the Assembly language.
|
||||
@ -603,11 +603,11 @@ haskell
|
||||
|
||||
*** Readers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-02099754-7102-4251-9e2e-a3ee33f4b469
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Readers-65e8e4ae
|
||||
:END:
|
||||
**** Epub and Pdf readers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-687183a4-280d-4027-bc7e-8f436a7cbaad
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Readers-Epub_and_Pdf_readers-0ef6688f
|
||||
:END:
|
||||
In this category, only the ~epub~ and ~pdf~ layers are enabled without any
|
||||
special configuration, so I can read these files from Emacs directly.
|
||||
@ -617,7 +617,7 @@ haskell
|
||||
|
||||
**** Elfeed
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1f99b28e-2b9c-4d4e-b526-25f99dc59951
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Readers-Elfeed-78877179
|
||||
:END:
|
||||
Elfeed is an Emacs feeed and RSS reader which can be managed through org
|
||||
files. Actually, through only one file in my case, located in my =~/org=
|
||||
@ -629,7 +629,7 @@ haskell
|
||||
|
||||
*** Version control
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-53ebecc5-53da-4a0c-88f4-b031ff3b1952
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Version_control-bc8e286a
|
||||
:END:
|
||||
Only the ~git~ layer is enabled in this category.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -638,7 +638,7 @@ haskell
|
||||
|
||||
*** Themes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e593bbe4-d778-4b11-a450-4e6e418109fe
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Themes-d88d1225
|
||||
:END:
|
||||
Here, the ~colors~ layer is the only one enabled. It activates support for
|
||||
identifiers colorization, and strings representing colors.
|
||||
@ -648,7 +648,7 @@ haskell
|
||||
|
||||
*** Tools
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-51f1d8a6-5f52-486a-a16b-301429cf8313
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Tools-e57e405e
|
||||
:END:
|
||||
In this category, the first layer to be enabled is the CMake layer for which
|
||||
I enabled support for the ~cmake-ide~ package.
|
||||
@ -683,7 +683,7 @@ haskell
|
||||
|
||||
*** Web Services
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6ec58708-518c-44f4-8ad0-3fa3b58117d5
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Web_Services-c2888251
|
||||
:END:
|
||||
In this category, I have only enabled a layer for Twitter support.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -692,7 +692,7 @@ haskell
|
||||
|
||||
*** Custom layers
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f9c6b261-f06b-4fd5-bf4e-161cb8744aeb
|
||||
:CUSTOM_ID: Spacemacs_layers_and_packages-Layers-Custom_layers-69473533
|
||||
:END:
|
||||
Lastly, three custom layers have been enabled: a w3m layer, and two of my
|
||||
custom layers for Dired and for conlanging tools.
|
||||
@ -707,8 +707,8 @@ haskell
|
||||
|
||||
* Init
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3f3c8a0b-56cd-4be6-b019-3ba6f1e24f96
|
||||
:header-args:emacs-lisp: :comments link :tangle ~/.config/emacs/private/spacemacs-init.el :exports code :results silent
|
||||
:CUSTOM_ID: Init-99a4b561
|
||||
:END:
|
||||
The ~dotspacemacs/init~ function is the one called at the very begining of the
|
||||
Spacemacs startup, before any kind of configuration, including the layer
|
||||
@ -725,7 +725,7 @@ haskell
|
||||
|
||||
** Emacs with pdumper
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-bb7c391e-3d0c-4c3c-99d4-09a1cb20be43
|
||||
:CUSTOM_ID: Init-Emacs_with_pdumper-f24ab30b
|
||||
:END:
|
||||
It is possible to compile Emacs 27 from source with support for the portable
|
||||
dumper, as shown in Spacemacs’ =EXPERIMENTAL.org= file. I do not use this
|
||||
@ -758,7 +758,7 @@ haskell
|
||||
|
||||
** Package managment and updates
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8573bacc-4372-49e3-a0ff-4520fe999c97
|
||||
:CUSTOM_ID: Init-Package_managment_and_updates-79363da3
|
||||
:END:
|
||||
Spacemacs’ core configuration can be updated via git commands using Github
|
||||
services. If Spacemacs is not set to the =develop= branch, it can check by
|
||||
@ -786,7 +786,7 @@ haskell
|
||||
|
||||
*** Elpa repository
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ac64233a-5c7a-41f4-98b5-ce838b33ba44
|
||||
:CUSTOM_ID: Init-Package_managment_and_updates-Elpa_repository-c07fb1c4
|
||||
:END:
|
||||
It is possible to ask Emacs to use an HTTPS connection when contacting the
|
||||
Elpa whenever possible. This value should be set to =nil= when the user has
|
||||
@ -807,7 +807,7 @@ haskell
|
||||
|
||||
*** Spacelpa repository
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1f432881-39b2-4d60-862f-a1a95ebe4a58
|
||||
:CUSTOM_ID: Init-Package_managment_and_updates-Spacelpa_repository-a431b288
|
||||
:END:
|
||||
The Spacelpa repository is a Spacemacs-specific package repository. It is
|
||||
possible to use it as the primary source to install a locked version of a
|
||||
@ -826,7 +826,7 @@ haskell
|
||||
|
||||
** Editing style
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8a6bfe01-3e45-4189-9bde-70efbe9739ee
|
||||
:CUSTOM_ID: Init-Editing_style-56d58a4b
|
||||
:END:
|
||||
By default, Spacemacs encourages the use of evil-mode, which brings vim
|
||||
keybinding in Emacs. Still, it has three different styles available:
|
||||
@ -849,7 +849,7 @@ haskell
|
||||
|
||||
** Spacemacs home configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6a78794e-9c0b-4390-99d5-55c5b13c8c5a
|
||||
:CUSTOM_ID: Init-Spacemacs_home_configuration-8375cdcc
|
||||
:END:
|
||||
The value below specifies the startup banner of Spacemacs. The default value
|
||||
is =official=, it displays the official Spacemacs logo. An integer value is
|
||||
@ -887,7 +887,7 @@ haskell
|
||||
|
||||
** Default major modes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8318ee22-ffaf-419a-a76b-41f327c23970
|
||||
:CUSTOM_ID: Init-Default_major_modes-37f4a891
|
||||
:END:
|
||||
The below variable sets a default major mode for a new empty buffer. Possible
|
||||
values are mode names such as =text-mode=, or =nil= to use Fundamental mode.
|
||||
@ -911,11 +911,11 @@ haskell
|
||||
|
||||
** Visual configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d7fe8e66-bfcd-43c4-81e5-fba433300b7b
|
||||
:CUSTOM_ID: Init-Visual_configuration-c4116cc1
|
||||
:END:
|
||||
*** Themes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-013f84c3-92c6-453f-9229-98f0ad6ba884
|
||||
:CUSTOM_ID: Init-Visual_configuration-Themes-315992bb
|
||||
:END:
|
||||
Spacemacs makes it quite easy to use themes and organize them. The below
|
||||
value is a list of themes, the first of the list is loaded when Spacemacs
|
||||
@ -969,7 +969,7 @@ haskell
|
||||
|
||||
*** Other on-screen elements
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fabead22-a4d0-4826-9ed1-37297810c30b
|
||||
:CUSTOM_ID: Init-Visual_configuration-Other_on-screen_elements-7d334e09
|
||||
:END:
|
||||
=which-key= is a helper which displays available keyboard shortcuts. This
|
||||
variable sets in seconds the time Spacemacs should wait between a key press
|
||||
@ -1080,7 +1080,7 @@ haskell
|
||||
|
||||
*** Appearance of Emacs frames
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-deae54d7-5790-4c11-8640-573cd3824dbd
|
||||
:CUSTOM_ID: Init-Visual_configuration-Appearance_of_Emacs_frames-59700bb7
|
||||
:END:
|
||||
Starting from Emacs 24.4, it is possible to make the Emacs frame fullscreen
|
||||
when Emacs starts up if the variable is set to a non-nil value. The default
|
||||
@ -1158,7 +1158,7 @@ haskell
|
||||
|
||||
** Spacemacs leader keys and shortcuts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-0bf00e10-d577-4133-91c6-39bdc96d847d
|
||||
:CUSTOM_ID: Init-Spacemacs_leader_keys_and_shortcuts-ebf21abe
|
||||
:END:
|
||||
The below setting sets the Spacemacs leader key. By default, this is the
|
||||
=SPC= key.
|
||||
@ -1208,7 +1208,7 @@ haskell
|
||||
|
||||
** Layouts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7b84a553-6c54-431e-ad23-dfa26c8a334f
|
||||
:CUSTOM_ID: Init-Layouts-61c0374d
|
||||
:END:
|
||||
The variable belows sets the name of the default layout. Its default value is
|
||||
="Default"=.
|
||||
@ -1237,7 +1237,7 @@ haskell
|
||||
|
||||
** Files-related settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c3aa3e27-4c42-4607-98fa-6e4647247ed3
|
||||
:CUSTOM_ID: Init-Files-related_settings-67fba383
|
||||
:END:
|
||||
The below value sets the size in MB above which Spacemacs will prompt to open
|
||||
the file literally in order to avoid preformance issues. Opening a file
|
||||
@ -1259,7 +1259,7 @@ haskell
|
||||
|
||||
** Emacs server
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ca601390-7851-4c05-8021-18ca3eb48ac7
|
||||
:CUSTOM_ID: Init-Emacs_server-d3947c28
|
||||
:END:
|
||||
Emacs can be launched as a server if the following value is set to non-nil
|
||||
and if one isn’t already running. The default value is ~nil~.
|
||||
@ -1283,7 +1283,7 @@ haskell
|
||||
|
||||
** Miscellaneous
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-69b80cd3-dc0c-405b-bd02-315821105922
|
||||
:CUSTOM_ID: Init-Miscellaneous-6b4f0b76
|
||||
:END:
|
||||
This value changes the folding method of code blocks. The possible values are
|
||||
either ~evil~, the default value, or ~origami~.
|
||||
@ -1329,8 +1329,8 @@ haskell
|
||||
|
||||
* User Initialization
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e297b9be-9b0d-4c2d-bb6e-402f0d00be0d
|
||||
:header-args:emacs-lisp: :comments link :tangle ~/.config/emacs/private/user-init.el :exports code :results silent
|
||||
:CUSTOM_ID: User_Initialization-e0d21089
|
||||
:END:
|
||||
While Emacs and especially Spacemacs loads, I want it to initialize some
|
||||
elements and load some packages. First of all, I want it to load my private
|
||||
@ -1376,12 +1376,12 @@ haskell
|
||||
|
||||
* User Configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7a36d3a0-8bb6-4d9d-9402-eadbc49fef32
|
||||
:header-args:emacs-lisp: :comments link :tangle ~/.config/emacs/private/user-config.el :exports code :results silent
|
||||
:CUSTOM_ID: User_Configuration-4a937fe5
|
||||
:END:
|
||||
** ASM configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-73c92790-872d-404d-b3b7-7a94fba4ef34
|
||||
:CUSTOM_ID: User_Configuration-ASM_configuration-f6dc7674
|
||||
:END:
|
||||
The first thing I will set with my ASM configuration is where the reference
|
||||
PDF is located.
|
||||
@ -1395,7 +1395,7 @@ haskell
|
||||
|
||||
** C/C++
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c0ee6b96-db28-408e-872a-4c4347f807d8
|
||||
:CUSTOM_ID: User_Configuration-C-C++-76c3f997
|
||||
:END:
|
||||
As the C/C++ syntax is checked by flycheck, let’s make sure we are using the
|
||||
latest standard available, that is C++17 and C17, from Clang.
|
||||
@ -1410,7 +1410,7 @@ haskell
|
||||
|
||||
** Custom functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e3766e6a-3b77-488d-8dfc-8489411b1c4f
|
||||
:CUSTOM_ID: User_Configuration-Custom_functions-ceb4bc42
|
||||
:END:
|
||||
In this section, I will put my various custom functions that do not fit in
|
||||
other sections and which are more oriented towards general usage throughout
|
||||
@ -1422,7 +1422,7 @@ haskell
|
||||
|
||||
*** ~phundrak/fill-paragraph~
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e87c6c3f-728d-4065-a886-70eb2c3cc579
|
||||
:CUSTOM_ID: User_Configuration-Custom_functions-~phundrak-fill-paragraph~-ab4ef600
|
||||
:END:
|
||||
This function was created in order to bind to another keyboard shortcut the
|
||||
already existing ~C-u M-q~ which I cannot type with evil-mode unless I’m in
|
||||
@ -1436,7 +1436,7 @@ haskell
|
||||
|
||||
*** ~terminal-here-default-terminal-command~
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4e7c3229-4baa-47d5-8897-545a8b85800a
|
||||
:CUSTOM_ID: User_Configuration-Custom_functions-~terminal-here-default-terminal-command~-1916a912
|
||||
:END:
|
||||
This function is actually an overwrite of the default one which apparently
|
||||
does not work on my machine. This function is called by
|
||||
@ -1450,7 +1450,7 @@ haskell
|
||||
|
||||
** Dart configuration
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-00537655-3c5f-4cc0-af90-4f357ba9350f
|
||||
:CUSTOM_ID: User_Configuration-Dart_configuration-ecf24ebf
|
||||
:END:
|
||||
For Dart, I mainly declared some custom shortcuts bound to ~dart-mode~
|
||||
related to flutter, so nothing too exciting here. Some prefix are declared in
|
||||
@ -1473,7 +1473,7 @@ haskell
|
||||
|
||||
** Dired
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1214442f-4dc7-4855-90ba-bb23d59af2c9
|
||||
:CUSTOM_ID: User_Configuration-Dired-ef8a7cac
|
||||
:END:
|
||||
When it comes to dired, I chose do modify some elements on how things are
|
||||
sorted and shown, but there isn’t much configuration. First, I want to always
|
||||
@ -1502,14 +1502,14 @@ haskell
|
||||
|
||||
** Emacs Lisp
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f087976e-3350-46c7-a269-f90c83f60d64
|
||||
:CUSTOM_ID: User_Configuration-Emacs_Lisp-59230f3c
|
||||
:END:
|
||||
Here will be stored my configuration directly related to Emacs Lisp,
|
||||
including some functions or default modes.
|
||||
|
||||
*** Enable ~eldoc-mode~ by default
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ef91e851-f0f2-4fe6-a1ee-b1556a17761c
|
||||
:CUSTOM_ID: User_Configuration-Emacs_Lisp-Enable_~eldoc-mode~_by_default-f131abde
|
||||
:END:
|
||||
By default, if some Elisp code is opened, I want to enable ~eldoc-mode~ so I
|
||||
can easily get some documentation on the symbols in the source code. This is
|
||||
@ -1520,7 +1520,7 @@ haskell
|
||||
|
||||
*** ~phundrak/write-to-buffer~
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3f3b771e-a4dd-42fd-bf97-8930d20c0a86
|
||||
:CUSTOM_ID: User_Configuration-Emacs_Lisp-~phundrak-write-to-buffer~-2f192dd3
|
||||
:END:
|
||||
I was very surprised when I discovered no such function exists in Elisp.
|
||||
This function basically writes a string into a buffer, and optionally
|
||||
@ -1543,14 +1543,14 @@ haskell
|
||||
|
||||
** Eshell
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-846478af-19e5-4e06-a97b-0886062d32c7
|
||||
:CUSTOM_ID: User_Configuration-Eshell-3012e67e
|
||||
:END:
|
||||
Eshell is a built-in shell available from Emacs which I use almost as often
|
||||
as Fish. Some adjustments are necessary for making this shell usable for me.
|
||||
|
||||
*** Environment variables
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f88fac3c-5bf1-452b-93f2-1f68436f2302
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Environment_variables-8dac73e0
|
||||
:END:
|
||||
Some environment variables need to be correctly set so Eshell can correctly
|
||||
work. The first environment variable to be set is the ~PATH~, as I have a
|
||||
@ -1589,7 +1589,7 @@ haskell
|
||||
|
||||
*** Custom functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8c921fc7-6b55-4829-92cd-133131f1e5f8
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Custom_functions-79d98245
|
||||
:END:
|
||||
When I’m in Eshell, sometimes I wish to open multiple files at once in
|
||||
Emacs. For this, when I have several arguments for ~find-file~, I want to be
|
||||
@ -1613,7 +1613,7 @@ haskell
|
||||
|
||||
**** Redirect text editors to Emacs
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a003cd6c-8e80-43a0-ac64-d21774c334b1
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Custom_functions-Redirect_text_editors_to_Emacs-dff362c6
|
||||
:END:
|
||||
I still have some muscle memory telling me to open nano, ed, or vim, and
|
||||
sometimes I even try to type ~emacs~ in the terminal, which is stupid with
|
||||
@ -1635,7 +1635,7 @@ haskell
|
||||
|
||||
*** Aliases
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7e11a04b-4387-4a62-af00-5d402814acac
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Aliases-ef06615f
|
||||
:END:
|
||||
This function is a function that will come in very handy for Eshell
|
||||
functions that call shell processes. It concatenates the initial string
|
||||
@ -1676,7 +1676,7 @@ haskell
|
||||
|
||||
**** System monitoring
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a2873e6b-2b71-499e-a113-341df334e4bd
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Aliases-System_monitoring-ee01b070
|
||||
:END:
|
||||
Similar to ~meminfo~, we also have ~gpumeminfo~ so we can get a quick look
|
||||
at the memory-related logs of our X session.
|
||||
@ -1722,7 +1722,7 @@ haskell
|
||||
|
||||
**** System management (packages and services)
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b46ba273-f212-45bb-8500-f82c168232f0
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Aliases-System_management_(packages_and_services)-afb6d9d3
|
||||
:END:
|
||||
The first command is ~remove~ which removes a package and its dependencies
|
||||
from the system.
|
||||
@ -1751,7 +1751,7 @@ haskell
|
||||
|
||||
**** Other
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4c235c5b-e61b-4a0e-8046-7e957e9dac13
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Aliases-Other-bd88ca97
|
||||
:END:
|
||||
~mkcd~ is a function that allows me to create a directory and ~cd~ into it
|
||||
at the same time.
|
||||
@ -1778,7 +1778,7 @@ haskell
|
||||
|
||||
**** Typos
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4da87dd0-18b3-46ae-8251-8a829288210f
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Aliases-Typos-c7bfe6eb
|
||||
:END:
|
||||
~q~ is a shorthand for ~exit~. ~exti~ and ~exi~ are for typos when I type ~exit~.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -1798,7 +1798,7 @@ haskell
|
||||
|
||||
*** Visual commands
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b276c491-58ba-43a2-898f-1d65aad0df89
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Visual_commands-2b15e0dc
|
||||
:END:
|
||||
With Eshell, some commands don’t work very well, especially commands that
|
||||
create a TUI. So, let’s declare them as visual commands or subcommands:
|
||||
@ -1811,7 +1811,7 @@ haskell
|
||||
|
||||
*** Eshell theme
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-83cff5d6-d77c-40af-ba49-80e5c84ff581
|
||||
:CUSTOM_ID: User_Configuration-Eshell-Eshell_theme-a06715a9
|
||||
:END:
|
||||
As with most shells, again, it is possible to customize the appearance of
|
||||
the Eshell prompt. First, we need to declare a macro so we can set a face
|
||||
@ -1854,7 +1854,7 @@ haskell
|
||||
|
||||
** File extensions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-beb67a88-d7d3-4d58-bbc7-7a7be67f64aa
|
||||
:CUSTOM_ID: User_Configuration-File_extensions-f76fe752
|
||||
:END:
|
||||
Sometimes, Emacs doesn’t recognize or misrecognizes some extensions,
|
||||
resulting in a wrong mode set for said file. Let’s fix that by associating
|
||||
@ -1890,7 +1890,7 @@ haskell
|
||||
|
||||
** LSP
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4d0272c3-df5e-4f6b-a6e6-f769add4e603
|
||||
:CUSTOM_ID: User_Configuration-LSP-4f8aa691
|
||||
:END:
|
||||
When it comes to the LSP layer, there are some options which are not enabled
|
||||
by default that I want to use, especially some modes I want to take advantage
|
||||
@ -1916,7 +1916,7 @@ haskell
|
||||
|
||||
** Mu4e
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ba4a69ff-38a6-498a-b076-a514bbf0701f
|
||||
:CUSTOM_ID: User_Configuration-Mu4e-f3df8e9e
|
||||
:END:
|
||||
Mu4e is a frontend for mu, an email analyzer which sits on top of a Maildir
|
||||
which gets updated with ~isync~. It has a lot of neat features, but I guess
|
||||
@ -2098,7 +2098,7 @@ haskell
|
||||
|
||||
** Miscellaneous
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-cee08965-745a-4a6f-b04e-bf1638342698
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-d230bc2f
|
||||
:END:
|
||||
I have a lot of variables that need to be set but don’t fall in any other
|
||||
category, so I’ll collect them here.
|
||||
@ -2110,7 +2110,7 @@ haskell
|
||||
|
||||
*** Evil
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1d889318-8b93-4e78-9fe4-9e751b0b1cbe
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Evil-ab8a36e3
|
||||
:END:
|
||||
As a user of Evil, I’m sometimes pissed when I accidentally press ~C-u~ and
|
||||
it gets me to the top of the document. So, let’s disable it:
|
||||
@ -2120,7 +2120,7 @@ haskell
|
||||
|
||||
*** Default modes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3ac59b6b-4ea3-4270-bdf2-07a68b867ebc
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Default_modes-b9e1522c
|
||||
:END:
|
||||
Some buffers sometimes won’t have a default mode at all, such as the
|
||||
~*scratch*~ buffer. In any vanilla configuration, they will then default to
|
||||
@ -2132,7 +2132,7 @@ haskell
|
||||
|
||||
*** Hooks
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a895c541-505f-4dc2-8eac-d1fbc45e2512
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Hooks-86da2da0
|
||||
:END:
|
||||
I also have some hooks I use for enabling some major and minor modes. The
|
||||
first one here allows the execution of the deletion of trailing space each
|
||||
@ -2164,7 +2164,7 @@ haskell
|
||||
|
||||
*** Pinentry
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c69ca384-fb5b-49e9-9b0d-987da0df1d61
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Pinentry-95004d5a
|
||||
:END:
|
||||
Pinentry should use the ~loopback~ mode when communicating with GnuPG. Let’s
|
||||
set it so:
|
||||
@ -2174,7 +2174,7 @@ haskell
|
||||
|
||||
*** Prettified symbols
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3b37d76b-8da4-4c06-adfc-0ccd04bbef18
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Prettified_symbols-da50f4a6
|
||||
:END:
|
||||
Just because it is pleasing to the eye, some symbols in source code get
|
||||
prettified into simpler symbols. Here is the list of symbols that are to be
|
||||
@ -2202,7 +2202,7 @@ haskell
|
||||
|
||||
*** Twittering mode
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fb99695a-99f9-4c30-a286-a9accbb8410f
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Twittering_mode-b97d9327
|
||||
:END:
|
||||
For ~twittering-mode~, a Twitter major mode for Emacs, I want to encrypt my
|
||||
data using a master password, which I do thanks to this option:
|
||||
@ -2212,7 +2212,7 @@ haskell
|
||||
|
||||
*** Wttr.in cities
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9d0208e7-f88f-4bba-a48a-e306d3f00939
|
||||
:CUSTOM_ID: User_Configuration-Miscellaneous-Wttr.in_cities-dd24f8c5
|
||||
:END:
|
||||
Thanks to the wttrin package, I can get the weather forecast in Emacs for a
|
||||
couple of cities. I just need to specify them to Emacs like so:
|
||||
@ -2223,7 +2223,7 @@ haskell
|
||||
|
||||
** Nov-mode
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fea5c178-425f-4e1d-a491-591a3dbb4f93
|
||||
:CUSTOM_ID: User_Configuration-Nov-mode-6f10765d
|
||||
:END:
|
||||
~nov-mode~ is the mode used in the Epub reader. Here I will write a little
|
||||
function that I will call through a hook each time I’m opening a new EPUB
|
||||
@ -2248,7 +2248,7 @@ haskell
|
||||
|
||||
** Python
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d26ce2ad-94b6-4e50-9803-d53e567f1206
|
||||
:CUSTOM_ID: User_Configuration-Python-9cdd1b06
|
||||
:END:
|
||||
Emacs throws me an error about the python interpreter, let’s silence it:
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -2257,7 +2257,7 @@ haskell
|
||||
|
||||
** Org-mode
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-5534acb1-963d-4aec-874d-f1f66b02a597
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-04ab8ad3
|
||||
:END:
|
||||
Org-mode is probably one of the best if not the best Emacs feature I have
|
||||
ever discovered. It is awesome for writing documents, regardless of the
|
||||
@ -2276,13 +2276,13 @@ haskell
|
||||
|
||||
*** Custom org-mode functions
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e87fcf0c-2e3e-48e1-80aa-1d8f1a39842b
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Custom_org-mode_functions-f1726995
|
||||
:END:
|
||||
We begin with a couple of custom functions that I use in my org-mode files.
|
||||
|
||||
**** Custom and unique headings ID
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-c6950fac-82a2-49cd-86bb-8f72c0fe9f22
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Custom_org-mode_functions-Custom_and_unique_headings_ID-44d2beaf
|
||||
:END:
|
||||
The first ones are dedicated to provide org-mode headings a fixed and
|
||||
unique ID that won’t change over time. This code was taken from
|
||||
@ -2396,7 +2396,7 @@ haskell
|
||||
|
||||
*** Org babel languages
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e60e0cf5-55ec-401a-82ed-256baff90f0c
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_babel_languages-c062fc16
|
||||
:END:
|
||||
One of the amazing features of org-mode is its literary programming
|
||||
capacities by running code blocks from within Org-mode itself. But for that,
|
||||
@ -2432,11 +2432,11 @@ haskell
|
||||
|
||||
*** Org variables
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-8e86e8dc-5889-44ff-9d10-766fb3e8b873
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_variables-97587637
|
||||
:END:
|
||||
**** User information
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-73307234-da02-4e61-8443-616213d5b004
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_variables-User_information-6c7d5e3f
|
||||
:END:
|
||||
Some variables about myself need to be set so Org-mode knows what
|
||||
information to include in exported files.
|
||||
@ -2449,7 +2449,7 @@ haskell
|
||||
|
||||
**** Visual settings
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a88bf63a-5200-46a6-be6e-2e455c347e4a
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_variables-Visual_settings-5d02f4c0
|
||||
:END:
|
||||
Visually, I prefer to hide the markers of macros, so let’s do that:
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -2458,7 +2458,7 @@ haskell
|
||||
|
||||
**** Org behavior
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-81bcc367-4b2a-4a10-b42c-7b3cb7fd2d60
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_variables-Org_behavior-0319db38
|
||||
:END:
|
||||
Here is one behavior that I really want to see modified: the ability to use
|
||||
~M-RET~ without slicing the text the marker is on.
|
||||
@ -2509,7 +2509,7 @@ haskell
|
||||
|
||||
**** Miscellaneous
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-42ccf90a-f507-4fab-ae42-3fd815a34ef0
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_variables-Miscellaneous-ddcb568a
|
||||
:END:
|
||||
When creating a link to an Org flie, I want to create an ID only if the
|
||||
link is created interactively, and only if there is no custom ID already
|
||||
@ -2520,7 +2520,7 @@ haskell
|
||||
|
||||
*** Org files exports
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-65bba789-e7d5-4f60-9280-5c7d11d7f657
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_files_exports-1e194169
|
||||
:END:
|
||||
When it comes to exports, I want the LaTeX and PDF exports to be done with
|
||||
XeLaTeX only. This implies the modification of the following variable:
|
||||
@ -2590,7 +2590,7 @@ haskell
|
||||
|
||||
*** Custom LaTeX formats
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-783545b6-04b8-4d16-8ab5-12a74c34cfba
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Custom_LaTeX_formats-8e8dca1c
|
||||
:END:
|
||||
I currently have two custom formats for my Org-mode exports: one for general
|
||||
use (initialy for my conlanging files, hence its ~conlang~ name), and one
|
||||
@ -2633,7 +2633,7 @@ haskell
|
||||
|
||||
*** Org agenda
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1c4fb1d5-dfc9-4b1e-be8c-375e6d61f886
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_agenda-53f9d319
|
||||
:END:
|
||||
One awesome feature of Org mode is the agenda. By default, my agendas are
|
||||
stored in =~/org/agenda=.
|
||||
@ -2664,7 +2664,7 @@ haskell
|
||||
|
||||
*** Org capture
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9a070bbb-5b57-4abd-9d61-51f2070eb47b
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-f58979cf
|
||||
:END:
|
||||
Org-capture is an amazing feature of Org-mode which allows me to quickly
|
||||
save links, resources, reminders and notes in a neatly organized org file.
|
||||
@ -2740,7 +2740,7 @@ haskell
|
||||
|
||||
**** Emails
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-9012599e-c143-4df0-b63c-7c60ddb4a081
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Emails-d87336fe
|
||||
:END:
|
||||
This is my template for a new Email:
|
||||
#+BEGIN_SRC org :tangle ~/org/capture/email.orgcaptmpl
|
||||
@ -2770,7 +2770,7 @@ haskell
|
||||
|
||||
**** Journal
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-ab1b21af-e887-41a7-be7a-c08825d16339
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Journal-9916f9bf
|
||||
:END:
|
||||
This template is quite simple: it creates a new entry with the current
|
||||
timestamp as its title, a brief title of my choosing, and then I can write
|
||||
@ -2783,7 +2783,7 @@ haskell
|
||||
|
||||
**** Notes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-2b5e7efc-4a9d-4a92-b75f-4ec75e2fb48d
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Notes-4b4c10aa
|
||||
:END:
|
||||
This template is used for taking note about various subjects that can go
|
||||
from conlanging to development. I wrote it so I can know from where this
|
||||
@ -2816,7 +2816,7 @@ haskell
|
||||
|
||||
**** Protocol
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6fa10246-26bf-4ab3-a3b0-1f58bc79350e
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Protocol-ec45ec49
|
||||
:END:
|
||||
This capture is used when received through org-protocol, with the
|
||||
Org-protocol Extension for Firefox. It allows me to save in a quote block
|
||||
@ -2851,7 +2851,7 @@ haskell
|
||||
|
||||
**** Resources
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-001eb681-1725-442d-91ef-b6a46c1784dc
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Resources-b23bfbd0
|
||||
:END:
|
||||
This is the default template for resources, which generally are located on
|
||||
the Internet. By default, I give them the lowest priority, because although
|
||||
@ -2871,12 +2871,12 @@ haskell
|
||||
|
||||
**** Tasks
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e8190e80-e2d5-4f68-84df-a760b00727e7
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Tasks-3fcf382a
|
||||
:END:
|
||||
|
||||
***** Computers and stuff
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-96f1bf32-ff88-498f-920b-0a583f5782eb
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Tasks-Computers_and_stuff-a4eef8e3
|
||||
:END:
|
||||
One type of task I often capture is related to my servers or thing about
|
||||
computers in general. With this, I can capture a task for which I will
|
||||
@ -2892,7 +2892,7 @@ haskell
|
||||
|
||||
***** Health
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-99c15553-4298-4d15-a0a1-1335ebc83cc2
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Tasks-Health-74f8f338
|
||||
:END:
|
||||
This capture is rarely used (I’m lucky to have a good health), but it can
|
||||
be useful.
|
||||
@ -2905,7 +2905,7 @@ haskell
|
||||
|
||||
***** Birthdays
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-e0d32ee1-cdf8-4d9e-aac6-55de262bb45e
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-Tasks-Birthdays-ec3b27be
|
||||
:END:
|
||||
This capture is used to store new birthdays I have to remember. They are
|
||||
set to be repeated yearly.
|
||||
@ -2928,7 +2928,7 @@ haskell
|
||||
|
||||
**** YouTube
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4b962a95-47d9-4410-8365-7d09e19530eb
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_capture-YouTube-827968ee
|
||||
:END:
|
||||
#+BEGIN_SRC org :tangle ~/org/capture/youtube.orgcaptmpl
|
||||
,* TODO [#C] %^{Title}
|
||||
@ -2942,7 +2942,7 @@ haskell
|
||||
|
||||
*** Org projects
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a1d5b79e-a053-46b0-a5ea-d5457acd1f7e
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_projects-5be088cd
|
||||
:END:
|
||||
Another great features of Org-mode is the Org projects that allow the user
|
||||
to easily publish a bunch of org files to a remote location. Here is the
|
||||
@ -2961,7 +2961,7 @@ haskell
|
||||
|
||||
**** Configuration website
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-7559d45e-a1e8-4755-8c34-a95c80a592c7
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_projects-Configuration_website-79bd0468
|
||||
:END:
|
||||
#+NAME: org-proj-config-html
|
||||
#+BEGIN_SRC emacs-lisp :tangle no
|
||||
@ -3001,7 +3001,7 @@ haskell
|
||||
|
||||
**** Linguistics website
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a54bbe09-960f-428e-9cbd-5dabb4bb8daa
|
||||
:CUSTOM_ID: User_Configuration-Org-mode-Org_projects-Linguistics_website-34b8d4e7
|
||||
:END:
|
||||
In my case, I only have my linguistics website, made out of three projects.
|
||||
The first component is the one generating the HTML files from the org
|
||||
@ -3065,7 +3065,7 @@ haskell
|
||||
|
||||
** Rust
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-4f572b65-92eb-4ecd-beb3-75aa5c260e37
|
||||
:CUSTOM_ID: User_Configuration-Rust-ba633575
|
||||
:END:
|
||||
I need to point to racer where the source code of Rust is located so I can
|
||||
get some documentation. This is installed with the ~rust-src~ component you
|
||||
@ -3086,7 +3086,7 @@ haskell
|
||||
|
||||
** Scheme
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-6b392c4b-9014-4dfa-802d-2bc0c85273b3
|
||||
:CUSTOM_ID: User_Configuration-Scheme-e35aa50a
|
||||
:END:
|
||||
The Scheme configuration will be very short, I just need to tell Emacs the
|
||||
name of the interpreter since it is not the default one:
|
||||
@ -3096,7 +3096,7 @@ haskell
|
||||
|
||||
** Shortcuts
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f193126f-abc1-4287-aa70-4f2080d2ef8f
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-aef3f7a7
|
||||
:END:
|
||||
As you will see, I defined a LOT of custom shortcuts. Most of them are
|
||||
Spacemacs shortcuts, defined in a way they can be used seamlessly with Evil.
|
||||
@ -3135,7 +3135,7 @@ haskell
|
||||
|
||||
*** Applications
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-928236e4-66e6-4d15-acd9-2748b90fdc70
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Applications-af8730b1
|
||||
:END:
|
||||
As this is a new category, let’s declare its prefix:
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -3156,7 +3156,7 @@ haskell
|
||||
|
||||
*** Comments
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f91ff790-3511-471a-83ce-4071a6e33420
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Comments-508db33d
|
||||
:END:
|
||||
Some shortcuts are also related to comment editing, in particular using
|
||||
outorg. Let’s first declare the dedicated prefix:
|
||||
@ -3178,7 +3178,7 @@ haskell
|
||||
|
||||
*** Files
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-37877887-e6d0-4e05-a2eb-566f349b76f6
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Files-206c2126
|
||||
:END:
|
||||
This category is mainly used for opening configuration files, but it is also
|
||||
more generally for files-related commands. Let’s declare the category:
|
||||
@ -3237,7 +3237,7 @@ haskell
|
||||
|
||||
*** Multiple cursors
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-de40bea1-4301-4ad3-b3f1-c4c8ed029feb
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Multiple_cursors-83db7c9c
|
||||
:END:
|
||||
I don’t really like Spacemacs’ layer for MultipleCursors, so I prefer to
|
||||
simply install the package and create shortcuts for it myself. Let’s first
|
||||
@ -3257,7 +3257,7 @@ haskell
|
||||
|
||||
*** Org-mode
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-beb15231-9718-4581-95dd-444c57190ee8
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Org-mode-a8938199
|
||||
:END:
|
||||
Now, onto some shortcuts related to org-mode. Let’s first declare the
|
||||
category:
|
||||
@ -3312,7 +3312,7 @@ haskell
|
||||
|
||||
*** Toggle
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-25a07df0-02b5-4e6e-a8a3-94a00dbbc54f
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Toggle-d53c27ef
|
||||
:END:
|
||||
This category allows to toggle some modes and options.
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -3365,7 +3365,7 @@ haskell
|
||||
|
||||
*** Text
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-1852f9ec-e2ca-495b-a72e-c3258add8033
|
||||
:CUSTOM_ID: User_Configuration-Shortcuts-Text-8d877c4b
|
||||
:END:
|
||||
The last category is a text-related category. Let’s declare it:
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
@ -3383,7 +3383,7 @@ haskell
|
||||
|
||||
** Yadm
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-fb5284ed-9862-4ba5-9d92-78b466ab65f8
|
||||
:CUSTOM_ID: User_Configuration-Yadm-4344fec3
|
||||
:END:
|
||||
yadm is the utility I use for managing my dotfiles, and it is a wrapper
|
||||
In order to manage my dotfiles, I use the following shortcut to launch Magit
|
||||
@ -3409,7 +3409,7 @@ haskell
|
||||
|
||||
* Footnotes
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a471c99d-e731-4196-9e69-beb0359962bd
|
||||
:CUSTOM_ID: Footnotes-5ffd05ee
|
||||
:END:
|
||||
|
||||
[fn:2] [[https://labs.phundrak.com/phundrak/dotfiles/src/branch/master/.spacemacs][labs.phundrak.com/phundrak/dotfiles/src/branch/master/.spacemacs]]
|
||||
|
@ -9,9 +9,8 @@
|
||||
|
||||
* Table of Contents :TOC_4_gh:noexport:
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-400070eb-725f-4416-a4c6-da3053df750b
|
||||
:CUSTOM_ID: Table_of_Contents-6af11648
|
||||
:END:
|
||||
|
||||
- [[#presentation][Presentation]]
|
||||
- [[#windows-and-pane-creation][Windows and pane creation]]
|
||||
- [[#display][Display]]
|
||||
@ -22,7 +21,7 @@
|
||||
|
||||
* Presentation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-d6e5eaf3-150c-4f3e-bc8e-fbbbb604640e
|
||||
: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
|
||||
@ -30,7 +29,7 @@
|
||||
|
||||
* Windows and pane creation
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-b7e4f3a6-ab16-47e8-aa72-b74b3a66893d
|
||||
:CUSTOM_ID: Windows_and_pane_creation-66275518
|
||||
:END:
|
||||
Whether if a new *window* will retain the current path. Possible values are:
|
||||
- true
|
||||
@ -64,7 +63,7 @@
|
||||
|
||||
* Display
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-a1b48bb1-40d8-4ffb-9ec0-b77e63f7ef84
|
||||
:CUSTOM_ID: Display-d5ae1908
|
||||
:END:
|
||||
Whether to activate RGB 24-bit color support (only available in tmux >= 2.2).
|
||||
Possible values are:
|
||||
@ -111,7 +110,7 @@
|
||||
|
||||
** Colors and style
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-3142ab15-458c-434b-99d6-1f89462a6f26
|
||||
: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
|
||||
@ -174,7 +173,7 @@
|
||||
|
||||
** Window status bar
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-f6a802f9-3b1e-4c83-8ffc-a72a35a691e9
|
||||
:CUSTOM_ID: Display-Window_status_bar-dff37ae7
|
||||
:END:
|
||||
The following variables are to set the window’s status style and format.
|
||||
|
||||
@ -370,7 +369,7 @@
|
||||
|
||||
* Clipboard
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-47a20d72-6406-4467-b833-a4bd33731487
|
||||
:CUSTOM_ID: Clipboard-66d0d03a
|
||||
:END:
|
||||
Whether if in copy mode, copying the selection also copies to the OS
|
||||
clipboard. Possible values are:
|
||||
@ -382,7 +381,7 @@
|
||||
|
||||
* User customizations
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: h-68bc0e1c-48d9-4b14-953d-875601d0edb7
|
||||
: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.
|
||||
|
Loading…
Reference in New Issue
Block a user