Compare commits

...

2 commits

Author SHA1 Message Date
b0c2307c39 Add abcde config file 2025-10-07 20:53:59 -07:00
84e15f0e20 Configure CodeCompanion plugin 2025-10-07 20:53:59 -07:00
2 changed files with 177 additions and 41 deletions

93
.abcde.conf Normal file
View file

@ -0,0 +1,93 @@
# -----------------$HOME/.abcde.conf----------------- #
#
# A sample configuration file to convert music cds to
# m4a/aac using fdkaac and abcde version 2.9.3
#
# https://andrews-corner.org/abcde/
# -------------------------------------------------- #
# Encode tracks immediately after reading. Saves disk space, gives
# better reading of 'scratchy' disks and better troubleshooting of
# encoding process but slows the operation of abcde quite a bit:
LOWDISK=y
# Specify the method to use to retrieve the track information,
# the alternative is to specify 'musicbrainz':
CDDBMETHOD=musicbrainz
# With the demise of freedb (thanks for the years of service!)
# we move to an alternative:
CDDBURL="http://gnudb.gnudb.org/~cddb/cddb.cgi"
# Make a local cache of cddb entries and then volunteer to use
# these entries when and if they match the cd:
CDDBCOPYLOCAL="y"
CDDBLOCALDIR="$HOME/.cache/cddb"
CDDBLOCALRECURSIVE="y"
CDDBUSELOCAL="y"
# Specify the encoder to use for m4a/aac. fdkaac is the
# best choice under native Linux at the moment:
AACENCODERSYNTAX=fdkaac
# Specify the path to the selected encoder. In most cases the encoder
# should be in your $PATH as I illustrate below, otherwise you will
# need to specify the full path. For example: /usr/bin/fdkaac
FDKAAC=fdkaac
# Specify your required encoding options here, the correct options
# can be seen by running: 'fdkaac -h' in a Terminal. Some nice
# examples of encoding options here: http://askubuntu.com/a/783890/57576
FDKAACENCOPTS='-p 2 -m 5 -a 1'
# Output type for m4a/aac.
OUTPUTTYPE="m4a"
# The cd ripping program to use. There are a few choices here: cdda2wav,
# dagrab, cddafs (Mac OS X only) and flac. New to abcde 2.7 is 'libcdio'.
CDROMREADERSYNTAX=cdparanoia
# Give the location of the ripping program and pass any extra options,
# if using libcdio set 'CD_PARANOIA=cd-paranoia'.
CDPARANOIA=cdparanoia
CDPARANOIAOPTS="--never-skip=40"
# Give the location of the CD identification program:
CDDISCID=cd-discid
# Give the base location here for the encoded music files.
OUTPUTDIR="$HOME/Music"
# The default actions that abcde will take.
ACTIONS=cddb,playlist,read,encode,tag,move,clean
# Decide here how you want the tracks labelled for a standard 'single-artist',
# multi-track encode and also for a multi-track, 'various-artist' encode:
OUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}/${ALBUMFILE}/${TRACKNUM} ${TRACKFILE}'
VAOUTPUTFORMAT='${OUTPUT}/Various Artists/${ALBUMFILE}/${TRACKNUM} ${ARTISTFILE}-${TRACKFILE}'
# Decide here how you want the tracks labelled for a standard 'single-artist',
# single-track encode and also for a single-track 'various-artist' encode.
# (Create a single-track encode with 'abcde -1' from the commandline.)
ONETRACKOUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}/${ALBUMFILE}'
VAONETRACKOUTPUTFORMAT='${OUTPUT}/Various Artists/${ALBUMFILE}'
# Create playlists for single and various-artist encodes. I would suggest
# commenting these out for single-track encoding.
#PLAYLISTFORMAT='${OUTPUT}/${ARTISTFILE}-${ALBUMFILE}/${ALBUMFILE}.m3u'
#VAPLAYLISTFORMAT='${OUTPUT}/Various-${ALBUMFILE}/${ALBUMFILE}.m3u'
# This function takes out dots preceding the album name, and removes a grab
# bag of illegal characters. It allows spaces, if you do not wish spaces add
# in -e 's/ /_/g' after the first sed command.
mungefilename ()
{
echo "$@" | sed -e 's/^\.*//' | tr -d ":><|*/\"'?[:cntrl:]"
}
# What extra options?
MAXPROCS=2 # Run a few encoders simultaneously
PADTRACKS=y # Makes tracks 01 02 not 1 2
EXTRAVERBOSE=2 # Useful for debugging
COMMENT='abcde version 2.9.3' # Place a comment...
EJECTCD=y # Please eject cd when finished :-)

View file

@ -1,43 +1,86 @@
return {
{
"github/copilot.vim",
config = function()
vim.keymap.set("n", "<leader>ce", ":Copilot enable<CR>", { desc = "Enable Copilot Completions" })
vim.keymap.set("n", "<leader>cd", ":Copilot disable<CR>", { desc = "Disable Copilot Completions" })
vim.keymap.set("i", "<C-a>", "copilot#Accept()", {
expr = true,
silent = true,
replace_keycodes = false,
})
vim.g.copilot_no_tab_map = true
end,
},
{
"CopilotC-Nvim/CopilotChat.nvim",
tag = "v3.4.0",
dependencies = {
{ "nvim-lua/plenary.nvim" },
{ "github/copilot.vim" },
},
build = "make tiktoken",
config = function()
vim.keymap.set("n", "<leader>cc", ":CopilotChatToggle<CR>", { desc = "Toggle Copilot Chat" })
vim.keymap.set("n", "<leader>cx", ":CopilotChatReset<CR>", { desc = "Reset Copilot Chat" })
require("CopilotChat").setup({
question_header = "",
answer_header = "",
separator = "",
error_header = "> [!ERROR] Error",
window = {
layout = "horizontal",
height = 0.3,
width = 0.25,
},
auto_insert_mode = false,
chat_autocomplete = false,
highlight_headers = false,
show_help = false,
})
end,
},
{
"github/copilot.vim",
config = function()
vim.keymap.set("n", "<leader>ce", ":Copilot enable<CR>", { desc = "Enable Copilot Completions" })
vim.keymap.set("n", "<leader>cd", ":Copilot disable<CR>", { desc = "Disable Copilot Completions" })
vim.keymap.set("i", "<C-a>", "copilot#Accept()", {
expr = true,
silent = true,
replace_keycodes = false,
})
vim.g.copilot_no_tab_map = true
end,
},
{
"CopilotC-Nvim/CopilotChat.nvim",
tag = "v3.4.0",
dependencies = {
{ "nvim-lua/plenary.nvim" },
{ "github/copilot.vim" },
},
build = "make tiktoken",
config = function()
-- vim.keymap.set("n", "<leader>cc", ":CopilotChatToggle<CR>", { desc = "Toggle Copilot Chat" })
-- vim.keymap.set("n", "<leader>cx", ":CopilotChatReset<CR>", { desc = "Reset Copilot Chat" })
require("CopilotChat").setup({
question_header = "",
answer_header = "",
separator = "",
error_header = "> [!ERROR] Error",
window = {
layout = "horizontal",
height = 0.3,
width = 0.25,
},
auto_insert_mode = false,
chat_autocomplete = false,
highlight_headers = false,
show_help = false,
})
end,
},
{
"olimorris/codecompanion.nvim",
dependencies = {
"nvim-lua/plenary.nvim",
"franco-ruggeri/codecompanion-spinner.nvim",
},
config = function()
vim.keymap.set("n", "<leader>cc", ":CodeCompanionChat Toggle<CR>", { desc = "Toggle CodeCompanion Chat" })
vim.keymap.set("v", "<leader>cc", ":CodeCompanionChat Add<CR>", { desc = "Add Context to CodeCompanion Chat" })
vim.keymap.set(
"n",
"<leader>cx",
":CodeCompanion chat clear<CR>",
{ desc = "Clear CodeCompanion Chat History" }
)
require("codecompanion").setup({
strategies = {
chat = {
adapter = "copilot",
model = "claude-3.5-sonnet",
},
},
extensions = {
spinner = {},
},
display = {
action_palette = {
width = 95,
height = 10,
prompt = "Prompt ", -- Prompt used for interactive LLM calls
provider = "default",
opts = {
show_default_actions = true, -- Show the default actions in the action palette?
show_default_prompt_library = true, -- Show the default prompt library in the action palette?
title = "CodeCompanion actions", -- The title of the action palette
},
},
},
log_level = "DEBUG",
})
end,
},
}