7th Week of 2024
Life Management⚑
Productivity⚑
Habit management⚑
-
New: Track your habit management.
You can have a
habits.org
file where you prioritize, analyze, track them.I'm using the next headings:
- Habits being implemented: It's subdivided in two:
- Habits that need attention
- Habits that don't need attention
- Unclassified habits: Useful when refiling habits from your inbox. This list will be analyzedwhen you do habit analysis.
- Backlog of habits: Unrefined and unordered list of habits
- Implemented habits:
- Rejected habits:
Each habit is a
TODO
item with the usual states:TODO
,DOING
,DONE
,REJECTED
. In it's body I keep a log of the evolution and the analysis of the habit. -
New: Habit management workflow.
Each month I'm trying to go through the list of habits to:
- Update the state of the habits: Some will be done, rejected or to register ideas about them.
- Decide which ones need attention.
- Do habit analysis on the ones that need attention.
For each of the habits that need analysis, apply the learnings of the next sections:
Coding⚑
IDES⚑
Diffview⚑
-
return { { "sindrets/diffview.nvim", dependencies = { { "nvim-tree/nvim-web-devicons", lazy = true }, }, keys = { { "dv", function() if next(require("diffview.lib").views) == nil then vim.cmd("DiffviewOpen") else vim.cmd("DiffviewClose") end end, desc = "Toggle Diffview window", }, }, }, }
Which sets the next bindings: -
dv
: Toggle the opening and closing of the diffview windows -
New: Use diffview as merge tool.
Add to your
~/.gitconfig
:[alias] mergetool = "!nvim -c DiffviewOpen"
-
If you call
:DiffviewOpen
during a merge or a rebase, the view will list the conflicted files in their own section. When opening a conflicted file, it will open in a 3-way diff allowing you to resolve the conflict with the context of the target branch's version (OURS, left), and the version from the branch which is being merged (THEIRS, right).The conflicted file's entry in the file panel will show the remaining number of conflict markers (the number following the file name). If what follows the file name is instead an exclamation mark (
!
), this indicates that the file has not yet been opened, and the number of conflicts is unknown. If the sign is a check mark, this indicates that there are no more conflicts in the file.You can interact with the merge tool with the next bindings:
]x
and[x
: Jump between conflict markers. This works from the file panel as well.dp
: Put the contents on the other bufferdo
: Get the contents from the other buffer2do
: to obtain the hunk from the OURS side of the diff3do
to obtain the hunk from the THEIRS side of the diff1do
to obtain the hunk from the BASE in a 4-way diff
Additionally there are mappings for operating directly on the conflict markers:
<leader>co
: Choose the OURS version of the conflict.<leader>ct
: Choose the THEIRS version of the conflict.<leader>cb
: Choose the BASE version of the conflict.<leader>ca
: Choose all versions of the conflict (effectively just deletes the markers, leaving all the content).dx
: Choose none of the versions of the conflict (delete the conflict region).
DevOps⚑
Infrastructure as Code⚑
Gitea⚑
-
New: Fix Server does not allow request for unadvertised object error.
Fetching the whole history with fetch-depth: 0 worked for us:
yaml - name: Checkout the codebase uses: actions/checkout@v3 with: fetch-depth: 0