Tuesday, December 31, 2024

Beatmaking In Reaper

loop recording midi thats the one I wanted to watch actually. You need to right click on the track and choose loop overdub and make a new empty midi clip otherwise it punches in a random spot and you have to glue it.(2:43)
  • automatic arm when track selected
  • in actions list set:
  • track: go to next/prev track (ctrl alt down or num pad down (num 8/9))
  • r click, track recording settings, quantize on input
  • make sure you have sws extensions so you can get rs5k for reasamplomatic
  • ive got it mapped to f1
hot to set up rs5k setting up reapers piano rollalsa is giving me bad latency on linu mint with pulse audio. jack would probably work better but I hate dealing with that so I'm looking for a way to improve the piano roll and just draw everything in. The problem is the piano roll has no grid lines.(oh its alt G to fix that)
  • in piano roll: options > cc velocity lane > show note length
  • view > piano roll notes > show velocity and names
  • options > drawing or selecting note sets note length
  • options > midi and mouse modifiers > dropdown to midi piano roll > left click set default action from deselect all notes and move edit cursor to just insert
  • actions > set alt u to split notes on grid(like fl)
  • r click tool bar > customize toolbar, you can add chordgun chord shortcuts to toolbar!
  • options > shift left drag set it to just select instead of off grid note grow
  • i have f4,f3, mapped to pull up chordgun
  • shift + numbers inserts chord
  • cmd b = sws render tracks to stereo stem tracks obeying time selection (bounce in place)

Hackytracky (renoise keybinds)

  • ctrl + shift return = duplicate pattern
  • space + shift/space = play, play from
  • ctrl + up/down switch midi item
  • return = loop

2 shortcuts to make the reaper piano roll more like fl

ctrl + mousewheel view: zoom vertically (MIDI CC relative/mousewheel)
multivert view: adjust vertical scroll (MIDI CC / osc only)

iddqd's tutorials are so essential i mapped num 1/2 to transpose updown and shift num 1/2 for octave like groovin in g. 5 and shift 5 for moving in 5ths. (first time creating custom actions v cool!). zebra shading was something i was really missing from fl (being able to see 8 bar chunks. Turning off the looping of midi clips in the set it and forget it vid

usefull actions for midi editing in reaper 5 reaper options for midi editing you need to know Vertical Background Zebra Shading (1-min REAPER Tips) | #shorts
  • the js multiwaveshaper is a sweet distortion
  • 50 hz kicker sub enhancer
  • "big booty bass enhancer" I think its like waves rbass?
  • paranoia mangler a bit crusher

How To Controll Sunvox With A Gamepad

This Is Cool!

Sunvox Keyboard Shorcut Modifications

shift 7/8 is cyclic shift, but I also have ctrl shift alt up/down for it. Its like renoise's super nudge tool that way.

how to quickly throw down a 4 on the floor untz untz techno beat:
with your step inc set to 1 add 8 bass drum notes. ctrl a, then ctrl p. for hi hats same thing but use cyclic shift to move them to the off beats

moving between patterns with shift fn arrow keys because on my logitech pebble keys it makes sense otherwise its shift pgup pg down home end.

f1 f2 f3 switch between pattern, timeline and modules. shift space is play from line, r command is play pattern, return is play from beginning, esc is stop

shift selecting is tedious for multi line selections its better to use set selection start and end points with ctrl 9 and 0 and using shift tab like a reverse index instead of having to shift and arrow over all the way over to select an entire chord. Ctrl L plays a line but it also copys it to brush so you can then use ctrl g to paste that line really important to know for working with chords

esc stop
r cmd play pattern
shift + right cmd play from line
shift + 7/8 cyclic shift selection
ctrl p expand to fill selection
space edit
fn shift + arrows (macbook otherwise ctrl shift) move between patterns
1 note-off
f1 pattern mode
f2 timeline
shift + enter insert
fn f3 module view
ctrl + b copy to brush
ctrl + g paste from brush
ctrl + l play line
shift space play from line

ctrl 9 starts selection, ctrl 0 ends selection. You can ctrl b to copy the selection to brush, ctrl g to paste the block and shift -/= to transpose that block

Monday, December 30, 2024

readinglist shortcut v2

no css just plain
readinglisthtml-v2

buchla, bryface, dave smith, kurzweil

Reading List

Patch Notes: Hélène Vogelsinger - YouTube
Suzanne Ciani: a masterclass in modular synthesis - YouTube
Moog vs Buchla: The Control Voltage Race | Astonishing History of Synths Ep. 3 - YouTube
Mort Subotnick on funding the buchla - YouTube
Bright Sparks Documentary - A Side - YouTube
Buchla - Electronic Music as Performance Art | Synthplex 2019 - YouTube
Don Buchla talks The Acid Test, NASA, and Moog | Red Bull Music Academy - YouTube
Suzanne Ciani on the Buchla | Red Bull Music Academy - YouTube
Web Extra: Who Was Don Buchla? - YouTube
01- The Littoral Myth- Part 1: Introduction - YouTube
ContinuuCon :: Tony Rolando on East Coast/West Coast Synthesis - YouTube
East Coast and West Coast synthesis - YouTube
West coast synthesis explained on the Buchla Easel V by Arturia - YouTube
Buchla Easel Command & Moog Grandmother | Eastcoast vs. Westcoast Synthesis | Thomann - YouTube
OVERFLOW #004 (Vancouver, BC - Dec. 27) | Teaser - YouTube
Fastbom live @ OVERFLOW #001: BOACONSTRUCTOR | HITORI TORI | BRYFACE | FASTBOM - YouTube
MAGFest 2019: Chiprave feat. Graz, bryface, HarleyLikesMusic, don'tblinkoryou'lldie, & chibi-tech - YouTube
OOPS! Plucks Only (Dirtywave M8) - YouTube
Harley Likes Music - Live at Square Sounds Australia 2014 (Whole show) - YouTube
bryface - Live at Square Sounds Australia 2014 (Whole show) - YouTube
8static Festival 2016 -- Day 2 -- bryface - YouTube
OC ReMix #2860: Chrono Trigger 'Crow Note Rigger' [Chrono Trigger] by bryface - YouTube
Game Boy Chiptunes with bryface! - Electric Playground Interview - YouTube
bryface - Blip Tokyo after-party @ Sabako (24.10.2011) [Full set] - YouTube
Square Sounds Tokyo 2018 SPECIAL ACT! bryface with Bolcoantes on Visuals Sun 16th Sept 2018 - YouTube
Editing JS Plugins in REAPER - YouTube
THIS is the BEST iOS DAW in 2023! - LOOPY PRO 🔥🔥🔥 - YouTube
Bad Gear - E-MU Orbit 9090 - YouTube
YAMAHA AN1x Demo & Review - YouTube
Bad Gear - Yamaha CS1x - Not Exactly My Thing - YouTube
Rhythm Roulette: Jake One | Mass Appeal - YouTube
making a beat with dollar bin vinyl - ASR-X Pro & MPC2000 - YouTube
(RARE) Kanye West Making A Beat In the Studio - YouTube
Bad Gear - Dave Smith Instruments Mopho - Giving the Pro-1 a Bad Name??? - YouTube
DAVE SMITH INSTRUMENTS (DSI) - SYNTH STUDIO & OFFICE TOUR - YouTube
Syntaur Presents: Dave Smith, Founder of Sequential - YouTube
Joe Rogan Experience #2117 - Ray Kurzweil - YouTube
Hans Zimmer - Wikipedia
Ray Kurzweil - Wikipedia
Robert Moog - Wikipedia
Dave Smith (engineer) - Wikipedia
SSEYO Koan Generative Music s/w was used by Brian Eno: Where now?
Wotja 3 - Reflective Music System - Customising a Noatikl Player - YouTube
PLUGINS 4 FREE - Free Audio Plug-ins Archives: Arguru Software
Alienated Buddha - The Graveyard (Original Mix) - YouTube
Juan Antonio Arguelles Rius - Wikipedia
Q+A: Where do I get a hurdy gurdy and how much are they? // PATTY GURDY - YouTube
REAPER | ReaPlugs
Destroy FX: Transverb
DFX Scrubby by Destroy FX - FSU Plugin VST Audio Unit

gruvbox theme for sunvox

Red
0-40-255-235
Green
0-40-178-255
Blue
0-40-74-181

Renoise Tools For Editing, cyclic shifting + fast euclidian polyrhythmic fills

Place Notes Evenly
Rotate-Pattern
works great with Supernudge
Vsti From Menu lets you choose next + prev vst patch from a hotkey! I set (- for prev and shift - for next) random-plug
Custom-Wave-Synth
gruvbox-theme
The Reaper Plugins

the reajs plug is a big deal! all those reaper plugins can run in renoise! (or any other daw),

  • saike dum drum

Sunday, December 29, 2024

propulse

propulse is a protracker clone that looks like schism

Saturday, December 28, 2024

audiolayer for sampling auv3

inter device audio IADM and midi i don't think it works on linux. but I could use audiolayer to make some soundfonts and bring those into renoise
demo of the auto sampling feature

Sunday, December 22, 2024

Adlib Tracker Keyboard Shortcuts (emacs org file for folding)


*  == ADLIB TRACKER ==
** General Commands

 F1                       Help
 F2 (^S)                  Save file
 F3 (^L)                  Load file
 F4 (^A)                  Toggle Nuke'm dialog
 F5                       Play
 F6                       Pause
 F7                       Stop
 F8                       Play song from current pattern or order
 F9                       Play current pattern or order only
 [Ctrl] F8                @F8 from current line ┐
 [Ctrl] F9                @F9 from current line ├ (Pattern Editor)
 [Alt] F6                 Single-play pattern   ┘ (Shift toggles trace)
 [Alt] F5                 @F5 ┐
 [Alt] F8                 @F8 ├ without synchronization
 [Alt] F9                 @F9 ┘
 [Shift] F2               Quick Save
 [Shift] F3               Quick Load
 [Shift] F5               F5 with Trace
 [Shift] F6               Toggle Debug mode from position at cursor
 [Shift] F8               F8 with Trace
 [Shift] F9               F9 with Trace
 [Shift] Space            Toggle MidiBoard mode ON/OFF
 ^Space                   Toggle Note Recorder mode ON/OFF (if possible)
 [Ctrl] Home,End          Skip to previous/next pattern while Tracing
 +,-                      Same as above; play pattern from start
 
** Recorder Mode
  ^Left,^Right     Select group of tracks for recording                 
  Enter            Start recording from current position (*)            
  Space            Toggle using custom instrument for all tracks ┐      
  [Alt] Space      Toggle using present instruments in tracks    ├ ref. 
  MBoard keys      Write notes to corresponding tracks           │ (*)  
  F8,F9            Toggle pattern repeat OFF/ON                  ┘      
  Backspace        Clear note/instrument sequence in tracks             
  ^Backspace       Clear complete note/instrument columns               
  Up,Down          Rewind/Fast-Forward while recording                  
  [Shift] Up,Down  Increase/Decrease row correction for writing notes   
  [Shift] F6       Continue in Debug mode from position at cursor       
  F7               Stop recording and reset starting position;          
                   current group of tracks can be modified              
  [Alt] 1..9,0     Toggle track channel ON/OFF (Shift toggles 1X)       
  [Alt] R          Reset flags on all tracks                            
  *                Reverse ON/OFF on all tracks                         
 ┌───────────────────────────────────────────────────────────────────┐
 │ IF SONG IS PLAYED WITH TRACE, IT CAN BE REMOVED WHILE...          │
 ├───────────────────────────────────────────────────────────────────┤
 │ Enter        Playback is paused and cursor stays on position      │
 │ Esc          Cursor jumps to last position and playback continues │
 │ [Shift] Esc  Cursor stays on position and playback continues      │
 └───────────────────────────────────────────────────────────────────┘
 
 
 Note that playing with Trace and playing without synchronization can be
 set up in configuration file (see options "trace_by_default"
 and "nosync_by_default")
 
 
 ^Enter                   Play next pattern according to order
 ^Left  (Up)              Rewind current pattern (with Trace)
 ^Right (Down)            Fast-Forward (with Trace)
 [Ctrl]{Shift} Up,Down    Change playback speed up/down {fine stepping}
 [Ctrl]{Shift} Up+Down    Reset playback speed {default speed}
 [Ctrl][Alt]   Temporarily show Debug Info window
 ^B                       Toggle Message Board window
 ^D                       Toggle Debug Info window
 ^Q                       Toggle Instrument Macro Editor window
 ^G                       Toggle Arpeggio/Vibrato Macro Editor window
 ^M                       Toggle Macro Browser window
 ^F                       Toggle Song Variables window
 ^H                       Toggle Replace window
 ^I                       Toggle Instrument Control panel
 ^E                       Toggle Instrument Editor window
 ^O                       Toggle Octave Control panel
 ^P                       Toggle Pattern List window
 ^R                       Toggle Remap Instrument window
 ^T                       Toggle Transpose window
 ^X                       Toggle Rearrange Tracks window
 ^1..^8                   Quick-set octave
 [Alt] +,- (Up,Down)      Adjust volume level of sound output
 [Alt] C                  Copy object to clipboard (with selection)
 [Alt] P                  Paste object from clipboard
 [Alt] M                  Toggle marking lines ON/OFF
 [Alt] L                  Toggle Line Marking Setup window
 [Alt] 1..9,0             Toggle track channel ON/OFF (Shift toggles 1X)
 [Alt] S                  Set all OFF except current track (solo)
 [Alt] R                  Reset flags on all tracks
 *                        Reverse ON/OFF on all tracks
 F10                      Quit program
 F11                      Toggle typing mode in Pattern Editor (AT-►FT-►ST)
 F12                      Toggle line feed in Pattern Editor
 [Shift] F12              Toggle jump to marked line in Pattern Editor
 [Ctrl][Tab] [...] (*)    Scroll Volume Analyzer section (if necessary)
 
 (*) Up,Down,PgUp,PgDown
 
 
** III/2. WAV RECORDER KEY REFERENCE
 ─────────────────────────────────
 
 [Alt|Ctrl]{Shift} F11    Toggle WAV recording ON
 [Alt|Ctrl]{Shift} F12    Toggle WAV recording OFF
 
 ┌──────────────────────────────────────────────────────┐
 │ FUNCTiONALiTY OF ALTERNATiVE KEYS                    │
 ├──────────────────────────────────────────────────────┤
 │ Alt    Toggle normal recording mode                  │
 │ Ctrl   Toggle 'per track' recording mode             │
 │ Shift  Toggle Fade in / Fade out sound processing    │
 ├──────────────────────────────────────────────────────┤
 │ POSSiBLE COMBiNATiONS: Alt,Ctrl,Alt+Shift,Ctrl+Shift │
 └──────────────────────────────────────────────────────┘
 
 If 'per track' recording mode is activated and song playback is stopped
 you can exclude/include corresponing tracks from/to being recorded
 with ordinary track selection procedure:
 
 [Alt] 1..9,0             Toggle track channel ON/OFF (Shift toggles 1X)
 [Alt] S                  Set all OFF except current track (solo)
 [Alt] R                  Reset flags on all tracks
 
 
** III/3. PATTERN ORDER KEY REFERENCE
 ──────────────────────────────────
 
 Up,Down,Left,Right       Cursor navigation
 PgUp,PgDn                Move up/down 32 patterns
 Home,End                 Move to the top/end of pattern order
 Tab,[Shift] Tab          Move to next/previous entry
 Insert                   Insert new entry
 Delete                   Delete entry
 Backspace                Clear entry
 ^Space                   Enter skip mark
 ^C                       Copy entry to clipboard
 ^V                       Paste entry from clipboard
 +,-                      Adjust entry
 ^F2                      Save module in tiny format
 Enter                    Switch to Pattern Editor
 
 Note that 80-FF pattern number range causes a jump in pattern order.
 syntax: order_number[hex](+80h); e.g. "9A" jumps to order 1A
 
 
** III/4. PATTERN EDITOR KEY REFERENCE
 ───────────────────────────────────
 
 Up,Down,Left,Right       Cursor navigation
 PgUp,PgDn                Move up/down 16 lines
 Home,End                 Move to the top/end of current pattern
 Tab,[Shift] Tab          Move to next/previous track
 [Shift] PgDn,PgUp (+,-)  Move to next/previous pattern
 [Shift] Home,End         Move fwd./bckwd. to the first/last pattern
 ^Home,^End               Move to the end/top of previous/next pattern
 Space                    Advance to next row
 ^PgUp,^PgDn              Transpose note (block) halftone up/down
 Backspace                Remove note or clear attributes
 Insert                   Insert new line (within track only)
 Delete                   Delete line (within track only)
 [Shift] Insert           Insert new line
 [Shift] Delete           Delete line
 [Shift] Enter            Toggle fixed and regular note
 ^K                       Insert Key-Off
 ^C                       Copy object at cursor to clipboard
 ^V                       Paste object from clipboard
 [Alt][Shift] P           Paste object from clipboard to more patterns
 ^Z                       Undo last operation (if possible)
 {Ctrl} "[","]"           Change current instrument
 [Alt] F2                 Save current pattern to file
 ^F2                      Save module in tiny format
 [Shift] F3               Quick load recent pattern data
 Enter                    Switch to Pattern Order
 
 NOTE SYSTEM: C,C#,D,D#,E,F,F#,G,G#,A,A#,B(H)
 VALiD NOTE ENTRiES: C,C-,C#,C1,C-1,C#1...
 
 ┌──────────────────────────────────────────────────────────────────┐
 │ BLOCK OPERATiONS IN PATTERN EDITOR                               │
 ├──────────────────────────────────────────────────────────────────┤
 │ Starting to mark a block: [Shift] Up,Down,Left,Right             │
 │ When at least one row in one track is marked, you can continue   │
 │ marking also with PgUp,PgDn,Home,End (Shift is still held down!) │
 │ Quick mark: [Alt] Q (1x-2x-3x) track ─> pattern ─> discard       │
 │ Toggle last marked block: [Alt] B                                │
 ├──────────────────────────────────────────────────────────────────┤
 │ ^B  Blank block  (Insert blank block to pattern)                 │
 │ ^C  Copy block   (Copy block to clipboard)                       │
 │ ^D  Delete block (Remove block from pattern)                     │
 │ ^N  Nuke block   (Clear block contents)                          │
 │ ^V  Paste block  (Paste block from clipboard to pattern) (*)     │
 │ ^X  Cut block    (Combine both Copy and Delete operation)        │
 ├──────────────────────────────────────────────────────────────────┤
 │ (*) PASTE BLOCK OPERATION VARIANTS                               │
 │ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯                               │
 │ "Paste block" operation has three other functional variants      │
 │ with different key shortcuts for activation:                     │
 │ 1) [Alt] V toggles "Mix block" operation, when block data        │
 │    from clipboard is applied without overwriting existing data;  │
 │ 2) [Shift] ^V toggles "Selective paste block" operation,         │
 │    when only block data from clipboard corresponding to current  │
 │    cursor position is being applied (i.e. note, instrument,      │
 │    1st effect or 2nd effect).                                    │
 │ 3) [Alt][Shift] V toggles "Flipped paste block" operation,       │
 │    when block data from clipboard is applied vertically flipped. │
 │                                                                  │
 │ MANIPULATION WITH FX VOLUME INFORMATION                          │
 │ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯                          │
 │ When there is block marked, which contains some effect           │
 │ commands carrying volume information, you can increase/decrease  │
 │ their values with +/- keys.                                      │

Furnace Tracker Shortcuts (html Table)

New Ctrl-N
Open file Ctrl-O
Save file Ctrl-S
Save as Ctrl-Shift-S
Undo Ctrl-Z
Redo Ctrl-Y
Play/Stop (toggle) Return
Play (from beginning) F5
Play from cursor Shift-Return
Step row Ctrl-Return
Octave up Keypad *
Octave down Keypad /
Previous instrument Shift-Keypad /
Next instrument Shift-Keypad *
Increase edit step Ctrl-Keypad *
Decrease edit step Ctrl-Keypad /
Toggle edit mode Space
Metronome Ctrl-M
Toggle full-screen F11
Panic F12
Window activation
Find/Replace Ctrl-F
Debug Menu Ctrl-Shift-D
Close current window Shift-Escape
Command Palette Ctrl-P
Note input
see "note input" section after table
Pattern
Transpose (+1) Ctrl-F2
Transpose (-1) Ctrl-F1
Transpose (+1 octave) Ctrl-F4
Transpose (-1 octave) Ctrl-F3
Increase values (+1) Ctrl-Shift-F2
Increase values (-1) Ctrl-Shift-F1
Increase values (+16) Ctrl-Shift-F4
Increase values (-16) Ctrl-Shift-F3
Select all Ctrl-A
Cut Ctrl-X
Copy Ctrl-C
Paste Ctrl-V
Paste Mix (foreground) Ctrl-Shift-V
Move cursor up Up
Move cursor down Down
Move cursor left Left
Move cursor right Right
Move cursor up by one (override Edit Step) Shift-Home
Move cursor down by one (override Edit Step) Shift-End
Move cursor to beginning of pattern Home
Move cursor to end of pattern End
Move cursor up (coarse) PageUp
Move cursor down (coarse) PageDown
Expand selection upwards Shift-Up
Expand selection downwards Shift-Down
Expand selection to the left Shift-Left
Expand selection to the right Shift-Right
Expand selection upwards (coarse) Shift-PageUp
Expand selection downwards (coarse) Shift-PageDown
Move selection up by one Alt-Up
Move selection down by one Alt-Down
Move selection to previous channel Alt-Left
Move selection to next channel Alt-Right
Delete Delete
Pull delete Backspace
Insert Insert
Mute channel at cursor Alt-F9
Solo channel at cursor Alt-F10
Unmute all channels Alt-Shift-F9
Instrument list
Add instrument Insert
Duplicate instrument Ctrl-D
Move instrument up in list Shift-Up
Move instrument down in list Shift-Down
Edit instrument Shift-Return
Instrument cursor up Up
Instrument cursor down Down
Instruments: toggle folders/standard view Ctrl-V
Wavetable list
Add wavetable Insert
Duplicate wavetable Ctrl-D
Move wavetable up in list Shift-Up
Move wavetable down in list Shift-Down
Edit wavetable Shift-Return
Wavetable cursor up Up
Wavetable cursor down Down
Wavetables: toggle folders/standard view Ctrl-V
Sample list
Add sample Insert
Duplicate sample Ctrl-D
Sample Editor: Create wavetable from selection Ctrl-W
Move sample up in list Shift-Up
Move sample down in list Shift-Down
Edit sample Shift-Return
Sample cursor up Up
Sample cursor down Down
Samples: Toggle folders/standard view Ctrl-V
Orders
Previous order Up
Next order Down
Order cursor left Left
Order cursor right Right
Order: Toggle alter entire row Ctrl-L
Add order Insert
Duplicate order Ctrl-D
Deep clone order Ctrl-Shift-D
Copy current order to end of song Ctrl-E
Deep clone current order to end of song Ctrl-Shift-E
Remove order Delete
Move order up Shift-Up
Move order down Shift-Down
Sample editor
Sample editor mode: Select Shift-I
Sample editor mode: Draw Shift-D
Sample editor: Cut Ctrl-X
Sample editor: Copy Ctrl-C
Sample editor: Paste Ctrl-V
Sample editor: Paste replace Ctrl-Shift-V
Sample editor: Paste mix Ctrl-Alt-V
Sample editor: Select all Ctrl-A
Sample editor: Resize Ctrl-R
Sample editor: Resample Ctrl-E
Sample editor: Amplify Ctrl-B
Sample editor: Normalize Ctrl-N
Sample editor: Fade in Ctrl-I
Sample editor: Fade out Ctrl-O
Sample editor: Insert silence Insert
Sample editor: Apply silence Shift-Delete
Sample editor: Delete Delete
Sample editor: Trim Ctrl-Delete
Sample editor: Reverse Ctrl-T
Sample editor: Invert Ctrl-Shift-T
Sample editor: Signed/unsigned exchange Ctrl-U
Sample editor: Apply filter Ctrl-F
Sample editor: Zoom in Ctrl-=
Sample editor: Zoom out Ctrl--
Sample editor: Toggle auto-zoom Ctrl-0
Sample editor: Set loop to selection Ctrl-L

Sunvox Keyboard Shortcuts (html Table)

Navigating through patterns was a huge one that was missing from the defaults! I mapped shift home/end/pgup/pg down for it. on my logitech pebble keys thats shift fn arrow keys. I would've just done shift but thats already used to make selections. I tried to use control but that is used to select instruments.

undo CTRL + Z
redo CTRL + Y or SHIFT + CTRL + Z
new project or object (module/pattern/...) CTRL + N
navigation LEFT,RIGHT,UP,DOWN, PAGEUP,PAGEDOWN, HOME,END,TAB
selection SHIFT + UP/DOWN/LEFT/RIGHT
selection begin CTRL + (
selection end CTRL + )
select all CTRL + A
cut CTRL + X or SHIFT + DELETE
copy CTRL + C
paste CTRL + V or SHIFT + INSERT
duplicate / clone CTRL + D
detach: detach the selected modules from the rest or convert the clones to the normal patterns; CTRL + H
insert an empty note and shift the pattern content down; or just insert something INSERT (or Command+I on Mac)
delete previous note and shift the pattern content up; or just delete something BACKSPACE
delete DELETE (or Fn+Backspace on Mac)
exit the application ESC
new project CTRL + SHIFT + N
load project CTRL + O
save project CTRL + S
save project to BACKUP.sunvox CTRL + B
set octave number F1...F8
octave up SHIFT + )
octave down SHIFT + (
play current note (in the pattern editor) and copy it to the brush CTRL + E
play current line (in the pattern editor) and copy it to the brush CTRL + L
paste from the brush CTRL + G
edit mode ON/OFF SPACE
increase the edit step CTRL + '='
decrease the edit step CTRL + '-'
insert ""Note OFF"" (==) CAPSLOCK or '~'
insert a special command ""Set Pitch"" (SP) K
insert a special command ""Previous Track"" (<<) SHIFT + K
paste and mix CTRL + M
select track CTRL + T
interpolate values CTRL + I
interpolate velocity CTRL + U
transpose up (+1 semitone) SHIFT + '='
transpose down (-1 semitone) SHIFT + '-'
transpose octave up (+12 semitones) SHIFT + ']'
transpose octave down (-12 semitones) SHIFT + '['
place selected events evenly CTRL + P
cyclic shift up SHIFT + 7
cyclic shift down SHIFT + 8
randomize module controllers CTRL + R
module link/unlink SHIFT + mouse movement
write the value to the pattern SHIFT + controller value change
next module SHIFT + >
previous module SHIFT + <
next synth CTRL + >
previous synth CTRL + <
next module horizontally (to the right) CTRL + RIGHT
previous module horizontally (to the left) CTRL + LEFT
next module vertically (below) CTRL + DOWN
previous module vertically (above) CTRL + UP
toggle mute CTRL + 1
toggle solo CTRL + 2
toggle bypass CTRL + 3
unmute all modules CTRL + 4
find a module CTRL + F
change the size of all modules SHIFT + scroll wheel
change the size of the selected module CTRL + scroll wheel
Description Keys
play/stop F9
play from beginning F10
play pattern F11
stop F12
record start/stop SHIFT + F9
play from the pattern cursor SHIFT + F10
go to beginning SHIFT + F12
write a microtone (Set Pitch XXYY command) to the pattern SHIFT + touch
first button on the left Y or ENTER
last button on the right N
cancel ESC
buttons from left to right 1...9

MilkyTracker Shortcuts (html Table)

Ctrl-Alt-Space (cycles thru pattern/instrument/sampler section)
Alt-Enter Switch between full screen and windowed display (Windows & SDL)
Shift-Command-F Switch between full screen and windowed display (OS X)
Shift-M Mute current channel
Ctrl-Shift-M Invert muting
Shift-U Un-mute all
Ctrl-Shift-T Open a new tab
Ctrl-Shift-W Close current tab
Ctrl-Shift-Left Select previous tab
Ctrl-Shift-Right Select next tab
Alt-= Increment instrument number of all notes in the current selection
Alt-- Decrement instrument number of all notes in the current selection
Ctrl-Shift-= Increment instrument number of all notes in the current track under the cursor
Ctrl-Shift-- Decrement instrument number of all notes in the current track under the cursor
F1…F8 Select octave
Ctrl-Shift-1…8
Space Toggle pattern editor focus (edit mode on/off)
Enter Play song from current order
Ctrl-Enter Play current pattern from beginning
Shift-Enter Play current pattern from cursor position
Shift-F9 Play current pattern from beginning (same as Ctrl-Enter)
Shift-F10 Play current pattern from position after the first quarter of the pattern length
Shift-F11 Play current pattern from position after the second quarter of the pattern length
Shift-F12 Play current pattern from position after the third quarter of the pattern length
Alt-Space Play song from current row (stop and return when keys are released)
Shift-Space Play row by row
Esc Stop
Ctrl-F Toggle song follow
Ctrl-P Toggle prospective pattern view
Ctrl-W Toggle pattern wrapping
Ctrl-L Toggle pattern change behavior (live mode)
Ctrl-O Load song
Ctrl-S Save song
Ctrl-Shift-S Save song as…
Ctrl-Q Exit program
Alt-F4 Exit program
Cursor keys Move around
Tab Jump to next channel
Ctrl-Tab Jump to previous channel
PageUp Jump 16 rows up
PageDown Jump 16 rows down
Home Jump to first row
End Jump to last row
F9 Jump to beginning of the pattern
F10 Jump to position ¼ through the pattern
F11 Jump to position halfway through the pattern
F12 Jump to position ¾ through the pattern
Ctrl-Z Undo
Ctrl-Y Redo
Shift-Cursor keys Select block
Shift-Alt-Cursor keys Extend block
Ctrl-A Select entire pattern
Ctrl-X Cut
Ctrl-C Copy
Ctrl-V Paste
Ctrl-Shift-V Convert current pattern to sample
Ctrl-I Interpolate values
Delete Delete note/instrument/volume/effect/parameter
Shift-Del Delete note, volume and effect at cursor
Ctrl-Del Delete volume and effect at cursor
Alt-Delete Delete effect at cursor
Insert Insert space on current track at cursor position
Shift-Insert Insert row at cursor position
Alt-Backspace Insert space on current track at cursor position (alternative for keyboards with no Insert key)
Shift-Alt-Backspace Insert row at cursor position (alternative for keyboards with no Insert key)
Backspace Delete previous note
Shift-Backspace Delete previous row
The key right of LShift Enter key-off
The key below Esc Enter key-off (Windows only)
1 Enter key-off (OS X only)
Alt-Plus or Shift-J Increase Add value
Alt-Minus or Shift-H Decrease Add value
Ctrl-J Increase BPM by 1
Ctrl-H Decrease BPM by 1
Ctrl-K Increase BPM by 5
Ctrl-G Decrease BPM by 5
Alt-I Load Instrument (current slot)
Mousedrag selection move selection
Shift+Mousedrag selection clones selection (when 'advanced dnd' is enabled in Misc-tab in config)
Alt-F7 Transpose current instrument in block down
Alt-F8 Transpose current instrument in block up
Shift-F7 Transpose current instrument in track down
Shift-F8 Transpose current instrument in track up
Ctrl-F7 Transpose current instrument in pattern down
Ctrl-F8 Transpose current instrument in pattern up
Alt-F1 Transpose all instruments in block down
Alt-F2 Transpose all instruments in block up
Shift-F1 Transpose all instruments in track down
Shift-F2 Transpose all instruments in track up
Ctrl-F1 Transpose all instruments in pattern down
Ctrl-F2 Transpose all instruments in pattern up
Ctrl-Shift up/down Select next/previous sample
Shift & drag Quick draw
Shift & drag Quick draw
Ctrl & drag Resize selection
Alt & drag Move selection or loop range
Ctrl-Alt-A Advanced edit
Ctrl-Alt-C Configuration
Ctrl-Alt-D Disk Operations
Ctrl-Alt-I Instrument editor
Ctrl-Alt-R Disk Recorder
Ctrl-Alt-S Sample Editor
Ctrl-Alt-T Transpose
Ctrl-Alt-X Main Screen
Ctrl-Alt-Z Toggle Scopes

Schism Tracker Keyboard Shortcuts (html table)

ShortcutAction
F1 Help (context Sensitive!)
Shift-F1 MIDI Screen
Ctrl-F1 System Configuration
F2 Pattern Editor /Pattern Editor Options
F3 Sample List
Ctrl-F3 Sample Library
F4 Instrument List
Ctrl-F4 Instrument Library
F5 Play Information / Play Song
F6 Play Current Pattern
Shift-F6 Play Song From Current Order
F7 Play Song From Mark / Current Row
Shift-F8 Pause / Resume Playback
F8 Stop Playback
F9 Load Module
Ctrl-L Load Module
Shift-F9 Message Editor
F10 Save Module
Ctrl-W Save Module
Shift-F10 Export Module To WAV,AIFF
F11 Order List And Panning
Ctrl-F11 Schism Logging
F12 Song Variables & Directory Configuration
Ctrl-F12 Palette Configuration
Shift-F12 Font Editor
{} Decrease / Increase Playback Speed
Ctrl [] Decrease / Increase Playback Tempo
[] Decrease / Increase Global Volume
Alt-F1-> Alt F8 Toggle Channels 1->8
Ctrl-D Toggle Mouse / Keyboard Grab
Ctrl-E Refreseh Screen And Reset Cache ID
Ctrl-G Go To Order / Pattern / Row Given Time
Ctrl-I Reinitialize Sound Driver
Ctrl-M Toggle Mouse Cursor
Ctrl-N New Song
Ctrl-P Calculate Approximate Song Length
Ctrl-Q Quit Schism Tracker
Ctrl-Shift-Q Quit Without Confirmation
Ctrl-S Save Current Song
Ctrl-Alt-Enter Toggle Fullscreen

Saturday, December 21, 2024

Producers - Dec

Todd Edwards
GZA Bobby Digital
Ian Kirkpatrick
Zedd
Calvin Harris
Mike Dean
Rick Rubin
Pharell

killer resources for learning fm synthesis

javelinart.com's guide to fm synthesis of real instruments.pdf
The chipsynth md manual has an excellent diagrams to help you wrap your head around picking the right alg to get the sound in your head
Porta FM manual breaks down 2op fm
Ctrix's Deflemask tutorial breaking down 4-op fm de mystifies the genesis SSG-EG retrigger env shapes which is gold
Diode Milliampere's synth clap tutorial in Ableton Operator
Brainpalace's VOPM tutorial. VOPM is soo good
Navie D's Sytrus Tutorial
FM in Schism Tracker

Dealing With Compressed Files In The Terminal

Extracting Common Compressed Formats on Linux

Extracting Common Compressed Formats on Linux

Incase you only have access to a Terminal here is how you would deal with 10 common compressed files. (like if your on a headless raspberry pi or sshd in from somewhere else)

  1. .tar.gz or .tgz (Gzip compressed tarball):

    tar -xvzf file.tar.gz
  2. .tar.bz2 (Bzip2 compressed tarball):

    tar -xvjf file.tar.bz2
  3. .tar.xz (XZ compressed tarball):

    tar -xvJf file.tar.xz
  4. .zip:

    unzip file.zip
  5. .rar:

    Install unrar first:

    sudo apt install unrar

    Then extract:

    unrar x file.rar
  6. .7z (7-Zip format):

    Install p7zip-full first:

    sudo apt install p7zip-full

    Then extract:

    7z x file.7z
  7. .gz (Single compressed file, not tarball):

    gunzip file.gz
  8. .bz2 (Single compressed file, not tarball):

    bunzip2 file.bz2
  9. .xz (Single compressed file, not tarball):

    unxz file.xz
  10. .Z (Compressed with compress):

    uncompress file.Z

Replace file with the actual name of your compressed file. For .tar formats, the options (-x, -v, -f) can be combined with the respective compression type (z for gzip, j for bzip2, J for xz).

Friday, December 20, 2024

FL Studio Keyboard Shortcuts Quizzes

my fl studio keybinds quiz 351 questions

I merged them into that one mega set but that link requires you to sign in and make a quizlet account. I had multiple embed codes before with all the seperate quizzes but it was making the page slow from all redundant requests with every iframe tag so heres the biggest one for the piano roll 99 questions. I Decided If I had to pick one it would be that.

Idk why its not showing up on mobile. The quiz is working fine on my laptop (maybe its because I'm signed in with an account? not a fan of stuff you need to be signed in to use. defeauts the whole purpose of having it embedded on a site.

making anki flash cards for fl studio

  1.  Install Table To Csv extension by igorlogious (firefox)
  2. Right click the tables in the fl studio docs
  3. Table To CSV > Copy TEXT
  4. paste into vim, remove header columns
  5. run the substitute command in :command mode (posted below)
  6. save it as a .tsv or .txt
  7. import into anki and import with ctrl + shift + i

The Substitute Command:

 


%s/"\([^"]*\)","\(.*\)"/\2\t\1/g

Thursday, December 19, 2024

export reading list shortcut

an absolute banger of a shortcut.
it exports it to Downloads on IOS
readinglist 2 html shortcut

Friday, December 13, 2024

Thursday, December 12, 2024

How To Install Adlibtracker SDL On Linux Mint


sudo apt install libsdl1.2debian:i386

pretty sure it needs the ^ because its 32bit on a64bit system otherwise just this:

    
        sudo apt update
        sudo apt install libsdl1.2debian
    

i installed both Made a ~/.applications folder and moved at2 to that. # Made a .desktop entry inside ~/.local/share/applications # make this file:


vim ~/.local/share/applications/at2.desktop

[Desktop Entry]
Name=at2
Comment=A tracking application
Exec=/home/mint/.applications/adtrack-2.4.24-linux-bin-debian-stretch-x86/adtrack2
Icon=/home/mint/.applications/adtrack-2.4.24-linux-bin-debian-stretch-x86/adtrack2.png
Terminal=false
Type=Application
Categories=Audio;Music;Utility;

Path=/home/mint/.applications/adtrack-2.4.24-linux-bin-debian-stretch-x86
StartupNotify=false

sick playlist of jungle mods by dnb rad

Renoise Breakcore Tutorial

This is a really good tutorial

Tuesday, December 10, 2024

Keyboard shortcuts for Deflemask and Furnace Tracker

If your trying to Learn to make chiptune You gotta know the keyboard shortcuts. I kept pulling up the docs but they were several pages and furnace has the keybinds in the settings but its not selectable text and its dark so i couldn't screen shot so i typed this out and made this 2 columns to save paper.

  • did the tables in vimwiki
  • ran :Vimwiki2HTML to export
  • opened it in abiword
  • pasted the tables into tables
  • here is the printer friendly pdf

    furnace and defle shortcuts.pdf

Saturday, December 7, 2024

Controll Hue On Linux Using Python

 Redshift Wasn't working for me on linux mint because geoclue couldn't find location. I added the coordinates to the config and it still didn't work in redshift-gtk. I ran the CLI version with the location as arguments and it worked but the shift was pretty weak. Looked into alternatives, xrandr can adjust the hue using gamma. Heres a python script that uses tkinter to create a GUI to manipulate the values. I added brightness and limited it to 0.10 min (FOR SAFETY).




import tkinter as tk
import subprocess

# Function to update the gamma values using xrandr
def update_display(brightness, r, g, b):
    # Get the output name (e.g., HDMI-1, eDP-1)
    output = subprocess.getoutput("xrandr | grep ' connected' | cut -d' ' -f1")
    
    # Construct the xrandr command to change brightness and gamma for red, green, and blue channels
    command = f"xrandr --output {output} --brightness {brightness} --gamma {r}:{g}:{b}"
    
    # Run the command using subprocess
    subprocess.run(command, shell=True)

# Function to handle the slider change and update the display
def on_slider_change(val):
    # Get the values from the sliders (brightness, r, g, b)
    brightness = slider_brightness.get()
    r = float(slider_r.get())
    g = float(slider_g.get())
    b = float(slider_b.get())
    
    # Update the display settings based on the slider values
    update_display(brightness, r, g, b)

# Function to reset the gamma and brightness back to default
def reset_display():
    # Get the output name
    output = subprocess.getoutput("xrandr | grep ' connected' | cut -d' ' -f1")
    
    # Reset to default gamma (1.0:1.0:1.0) and brightness (1.0)
    command = f"xrandr --output {output} --brightness 1.0 --gamma 1.0:1.0:1.0"
    subprocess.run(command, shell=True)

# Create the main Tkinter window
root = tk.Tk()
root.title("Gamma and Brightness Control")

# Set up slider for Brightness (range 0.1 to 1.0)
slider_brightness = tk.Scale(root, from_=0.1, to_=1.0, orient="horizontal", label="Brightness", resolution=0.01, command=on_slider_change)
slider_brightness.set(1.0)  # Set initial value to 1 (default brightness)
slider_brightness.pack()

# Set up sliders for Red, Green, and Blue
slider_r = tk.Scale(root, from_=0.5, to_=2.0, orient="horizontal", label="Red", resolution=0.01, command=on_slider_change)
slider_r.set(1.0)  # Set initial value to 1 (default gamma)
slider_r.pack()

slider_g = tk.Scale(root, from_=0.5, to_=2.0, orient="horizontal", label="Green", resolution=0.01, command=on_slider_change)
slider_g.set(1.0)
slider_g.pack()

slider_b = tk.Scale(root, from_=0.5, to_=2.0, orient="horizontal", label="Blue", resolution=0.01, command=on_slider_change)
slider_b.set(1.0)
slider_b.pack()

# When the Tkinter window is closed, reset gamma and brightness to default
root.protocol("WM_DELETE_WINDOW", lambda: (reset_display(), root.destroy()))

# Start the Tkinter event loop
root.mainloop()

This one is a curses TUI instead of tkinter


import curses
import subprocess

# Function to update the brightness using xrandr
def update_display(brightness):
    # Get the output name (e.g., HDMI-1, eDP-1)
    output = subprocess.getoutput("xrandr | grep ' connected' | cut -d' ' -f1")
    
    # Construct the xrandr command to change brightness
    command = f"xrandr --output {output} --brightness {brightness}"
    
    # Run the command using subprocess
    subprocess.run(command, shell=True)

# Function to handle the slider change and update the display
def update_slider(brightness, direction):
    if direction == 'up':
        brightness = min(brightness + 0.10, 1.0)  # max value for brightness is 1.0
    elif direction == 'down':
        brightness = max(brightness - 0.10, 0.20)  # min value for brightness is 0.20
    return brightness

def draw_slider(window, y, x, brightness, min_value, max_value):
    # Create the vertical slider representation
    slider_length = 10
    filled_length = int((brightness - min_value) / (max_value - min_value) * slider_length)
    
    # Draw the slider on the terminal
    window.addstr(y, x, "Brightness:")
    for i in range(slider_length):
        if i == slider_length - 1 - filled_length:
            window.addstr(y + i, x + 15, "*")  # This represents the slider's current value
        else:
            window.addstr(y + i, x + 15, "|")
    
    # Add value next to the slider
    window.addstr(y + slider_length + 1, x + 15, f"Value: {brightness:.2f}")

def main(stdscr):
    curses.curs_set(0)  # Hide cursor
    stdscr.nodelay(1)  # Make getch non-blocking
    stdscr.timeout(100)  # Refresh every 100ms

    # Initial value for brightness slider
    brightness = 1.0
    min_value = 0.20
    max_value = 1.0

    while True:
        stdscr.clear()

        # Draw the vertical brightness slider
        draw_slider(stdscr, 2, 2, brightness, min_value, max_value)

        # Instructions
        stdscr.addstr(14, 2, "Use Up/Down arrows to change brightness, q to quit")

        # Refresh the screen
        stdscr.refresh()

        key = stdscr.getch()

        if key == ord('q'):
            break
        elif key == curses.KEY_UP:
            brightness = update_slider(brightness, 'up')
        elif key == curses.KEY_DOWN:
            brightness = update_slider(brightness, 'down')

        # Update the display based on the brightness value
        update_display(brightness)

# Run the curses application
curses.wrapper(main)

Friday, December 6, 2024

Qr Codes On Linux Mint

Qtqr decodes and encodes. Its exactly what I was looking for. Searching throuhg linuxlinks.com I also came across qrcp, it lets you share files over wifi by creating a qrcode


sudo apt install qtqr
qrcp website

sudo dpkg -i qrcp_0.5.0_linux_x86_64.deb
# Confirm it's working:
qrcp version

Step Edit Mode in FL Studio

This is such a sick feature that gets slept on. Requires you to have a full sized keyboard (laptop people your missing out)

  • Ctrl + E = Enable Step Edit
  • Numpad * = Forward
  • Numpad / = Backwards
  • midi key + / or * = extends length

My 4 Track Midi Template for Fl Studio

I'm using this in fl studio version 10 for quick midi sketching.

MY GM.flp

Put the template in ~/.wine/drive_c/Program Files/Image-Line/Fl Studio 10/Data/Projects/Templates/Power User

It Uses The Yamaha SGP2(S-YXG2003LE)vst

Midi CC Printable

midi cc list.pdf

Running Raspberry Pi Audio through Webaudio

Reaper Runs with Jack, The Browser Runs with Pulseaudio.

The fix:


sudo apt install pavucontroll pulseaudio-module-jack

vim /etc/pulse/default.pa

to the end of the file add:


load-module module-jack-sink
load-module module-jack-source

Getting Midi Working On Linux - a2jmidi

If You are trying to use Jack as your audio driver in Reaper your midi devices won't show up because they default to ALSA. The fix:


sudo apt install a2jmidid

Launch it by typing in the shell:


a2jmidid -e

Using Phone As A Mouse On Raspberry Pi

I Reinstalled this app Touchpad by Edovia Inc. I was Looking for it on the App store and couldn't find it. It looks like they no longer sell it on their website. They are the people who make the Screens remote desktop app. I also bought the Numpad app so i could use a TKL keyboard with the occasional numpad for renoise potentially and thats gone also. well im glad I could download it again from the app store under purchased apps.I've bought some music apps that no longer exist even though I've purchased and it feels like I bought air. The worst is when they make an upgraded version and try to sell it to you for a higher price. Im

I'm glad it works great. Now I can be Lazy and use my phone to click on things from across the room when I don't have my mouse handy

Airplay On Raspberry Pi

This is pretty cool. I'm able to beam music from my phone to my pi unfortunately the video isn't working. Might Be something to do with my I3 window manager having it run behind my terminal. The tutorial I was following said to install some other app in pikiss under the other category but when I was looking for it It wasn't there, It had been replaced for uxplay. The default setup didn't work for me so uninstalled and reinstalled it from apt. It was missing some Gstreamer libraries and once I got those installed it worked fine.

Its also important to note that the raspberry pi struggles with video because by default it wants to outpute a huge resolution so thats why there are some optimizations in that bash alias

This is what I added to my .bashrc to trigger airplay:


# airplay
alias airplay='uxplay -n "RaspberryAirPlay" -s 1600x900@45 -fps 45 -vd v4l2h264dec -vc v4l2convert -vs autovideosink -as alsasink'

Tuesday, December 3, 2024

Friday, November 29, 2024

breakbeat archive

some classics
archive breaks

script to grab every break from that site in one go. (instead of having to click download 38 times)

I learned about exponential backoff while trying to figure this out

Warped, stretched and joined them using Reaper into one big file called

everybreakbeat-160bpm.wav

so you can chop anywhere on a downbeat at either 80 or 160bpm and get something going.

ArmandoDrumBreaks

is a youtube channel with a bunch of perfecly cut loops on it i recently found out about early this week.

Saturday, November 23, 2024

How To Search Wikipedia From CLI And Copy To Clipboard

wikit on github

npm i wikit -g

add this to your .bashrc


# wiki search from terminal to clipbard
wiklip() {
    read -p "Enter search term: " search_term
    wikit "$search_term" | xclip -selection clipboard
    echo "Copied summary of '$search_term' to clipboard."
}

Friday, November 22, 2024

Wifi On Peppermint OS Devuan

trying out Peppermint with a non systemd distro. wifi was only working on ethernet.


sudo apt install bcmwl-kernel-source

How To Center A Vim Search

Trying to find if i can switch from ALSA to pulse audio in the renoise.xml config. alsa doesn't share audio so when I have reaper running and try to open renoise it poops its pants and I have to go in and manually switch the driver to something that isnt jack (because jack isn't set up and I don't wanna have to deal with qjackctl if I don't have to).The

Add this to your .virmc:


" Center Searches
nnoremap n nzz
nnoremap N Nzz
 

THE REGEX TO FIND XML TAGS:


.* is everything in the middle of the comment

optional, in command mode in vim type:


:set hlsearch

Thursday, November 21, 2024

change screen resolution on raspbian

I tried sudo raspi-config to chnage display resolution but in the new 64 bit os it doesn't come installed as an option. The fix:


sudo apt install arandr

Wednesday, November 20, 2024

raspberry pi loopback not working potential fix

forum post about it

My fix for getting audio out of renoise and into reaper on linux mint didn't work on my pi. Raspberry pi switched ALSA for pulse audio so snd-loopback isn't fount in the script

open manpages in vim

Learned this trick from the mental outlaw video "The Best Way to Learn Linux" This opens manpages in Neovim:

export MANPAGER='nvim +Man!'

This one uses regular vim:

export MANPAGER="vim -M +MANPAGER -"

Teal Deer (TLDR)

offline cheat sheets


sudo apt install tldr
tlr --update

wikiman

offline wiki documentation in the terminal

wikiman releases on github

sudo apt update
sudo apt install ./wikiman*.deb

usb sata ssd not working on pi4

Orico HDD enclosure 2189U3-BK-BP. too bad. It was on sale I should've maybe just spent 5 bucks more and gotten something that works. (maybe that one would also not work?) The jms578 and jms579 JMicron chips I think aren't compatible. Its slower than running off a micro sd unfortunately and other times it just doesn't boot up.

Forum post about a fix involving disabling UAS USB SATA cable fix by leepsvideo on youtube

his fix involves using lsusb to get the numbers to add to the /boot/cmdline.txt (spaces are fine but no newlines.) what i would put for the orico (it still didn't work)


usb-storage.quirks=0080:a001

I think I read somewhere that the Pi boots from the blue USB ports only maybe Il try the other ones and see if that works, then maybe a powered hub before giving up and returning it.. or maybe il see if i can run linux mint on my other computer with it

Yeah I was right

I got it to work on the other USB ports but not reliably on the blue ones

Tuesday, November 19, 2024

disable/ enable livetext

settings > general > language > turn off livetext

on iPhones it's annoying when you try to select a photo and it starts grabbing text but sometimes its really useful. like for screenshotting error logs and chatgpting them

Fixing Tiny Font In I3 On Fresh Raspian

just installed xorg-xserver and i3 onto a Kingston A400 SSD for my pi4 running a fresh install of lite Raspberry pi64. I3 uses i3-sensible-terminal for the terminal which references some terminal on your system but i forgot what it was.

The terminal is uxterm

The fix:


vim ~/.Xresources

UXTerm*faceName: Monospace
UXTerm*faceSize: 12

xrdb -merge ~/.Xresources

windows vsts on linux with Yabridge

yabridge github page ubuntu/debian releases-yabridge 5.1.1.tar.gz

extract it to this directory


~/.local/share

add yabridge to your path in .bashrc


export PATH="$PATH:$HOME/.local/share/yabridge"

How to use:

  • yabridgectl add '/home/mint/.wine/drive_c/Program Files/VstPlugins/'
  • yabridgectl sync

for yabridge add make sure its the path you've got your vsts. you might need to change it if you have them somewhere different

Breeze icons - Rounded Corners

So I installed catalina style ones on my pi4, But on my mint-air I tried the breeze Icons. They are a little crispier than the mac ones might just go with those. Also saw these ones with rounded corners maybe I'll take those ones for a spin.

Breeze Rounded Corners - XFCE Look.org Breeze Icons on Github

Monday, November 18, 2024

how hide/show hidden files in cmus

With the default keybindings, you can press i to show hidden files. Alternatively, you can set the show_hidden option.

Sunday, November 17, 2024

Remember To Clear Your Font Cache

If you installed a new font int ~/.local/share/fonts but they still aren't showing up you gotta do this:


fc-cache -fv

raspberry pi mac icons

put them in in ~/.local/share/icons (the hidden directory inside your home directory not /usr/local so you dont need to sudo move it after all)

OS Catalina

dark theme for pcmanfm on raspberry pi


sudo apt install arc-theme

90s sample cds + piggy tracker manual

so I don't need to keep giving that video page views

here are the links from that vid description in

Saturday, November 16, 2024

Getting mpv to play from yt-dlp


alias tube='yt-dlp "$(xclip -o -selection clipboard)" -o - | mpv - --force-seekable=yes'

using yewtube to search, pressing x 1 selects the first option and copys it to clipboard, here im using xclip so when I ad this to my .bashrc when i run the alias tube it uses the xclip url as an argument passed into the script

I was having trouble with the old version of yt-dl beingused to open links with mpv and I tried symlinking the new one over the old one but that fix didn't end up working for me. Its been bugging me for a while because other players like ytfzf also depend on the old version that were broken because of the old package

Connecting A Bluetooth Keyboard On Raspberry Pi 4

There are 2 cli apps I used for this

  • bluetoothctl
  • blueman-applet

using bluetoothctl:


scan on
pair (address)
enter the code on keyboard + press  enter

before it wasn't showing the code to enter and it was just failing to connect without warning in i3 desktop butafter trusting it in blueman-applet it worked? i was about to go into the settings and just enable everything but I guess I didn't need to resort to that

Tuesday, November 12, 2024

more robust version of blogpost vim script

this should work with the edge cases. my old one would get choked up processing h2s and make would poop its pants and i'd have to manally rerun my automation. hopefull this fixes it. also i hadded some debugging checks that go off when i send to give a lil info incase it doesn't go through just to help me see whats goin' on better.

looks like the regex is screwing up the codeblock unfortunately

function! Blogpost()
    " Get the current buffer content
    let l:buf_content = join(getline(1, '$'), "\n")

    " Debugging: Show the full content of the buffer
    echo "Buffer Content:"
    echo l:buf_content

    " Try to extract the first heading tag (h1 through h6)
    let l:title = ''
    for l:i in range(1, 6)  " Loop through heading levels 

to

let l:heading = matchstr(l:buf_content, '\(.*\)') if l:heading != '' let l:title = substitute(l:heading, '\(.*\)', '\1', '') break endif endfor " If no heading found, print error if l:title == '' echo "No heading found (

to

)." return endif " Debugging: Show extracted title echo "Extracted Title:" echo l:title " Extract content after the first heading let l:content_start = matchend(l:buf_content, '.*') let l:content = strpart(l:buf_content, l:content_start) " Debugging: Show the extracted content echo "Extracted Content:" echo l:content " Check if title and content are not empty if l:title == '' || l:content == '' echo "Error: Missing title or content." return endif " Create a dictionary for the JSON payload let l:json_dict = { \ 'title': l:title, \ 'content': l:content \ } " Convert the dictionary to JSON let l:json_payload = json_encode(l:json_dict) " Debugging: Show the JSON payload echo "JSON Payload:" echo l:json_payload " Create a temporary file to hold the JSON payload let l:tmpfile = tempname() call writefile([l:json_payload], l:tmpfile) " Prepare the curl command let l:cmd = 'curl -X POST https://hook.us1.make.com/YOUPUTYOURWEBOOKSECRETHERE -H "Content-Type: application/json" -d @' . shellescape(l:tmpfile) " Run the curl command let l:output = system(l:cmd) " Clean up the temporary file call delete(l:tmpfile) " Show the output or errors echo l:output endfunction " Create a command to run the function command! Blogpost call Blogpost()

Pulsar Is My New Favorite Editor

move over brackets (vim is still classic though) Its got emmet, live server and a decent dark theme out of the box

Pulsar's download page

Overriding Htdocs Security In Xampp

Maybe (probably) not best practices but at least it this allows you to work with the folder. By Default its wayy too locked down where you can't even delete the default files that come with xampp or install anything into the folder. I was trying to install wordpress before and because I had no read/write permissions it was broken. Here is my fix on linux where lampp is in opt/lamp. If you are on a raspberry pi I think its in /var/www/html


sudo chown -R YOURUSERNAMEGOESHERE:daemon /opt/lampp/htdocs
sudo chmod -R 775 /opt/lampp/htdocs

Html Colors I Like

I really Like the colors luke smith picked out for his website based.cooking.Looking at the stylesheet I noticed he actually used named webcolors instead of rgb or hex colors

  • navajowhite
  • goldenrod
  • gold
  • tomato
  • lime

Adding Xampp To Path

in .bashrc add


#xampp
export PATH=$PATH:/opt/lampp

Sunday, November 10, 2024

typing speeds

20,000 words how long does it take?

Last time I checked Sean Wrona was the man with the highscore in endurance typing of 174 over 50mins. If I wanted to churn through 20,000 words in an hour Id need to type roughly around 333wpm.

Kind of reminds me of that video where they try to calculate how hard would you need to slap chicken to cook it (food theorists say 1 3725mph slap) or how many slaps it would take? (in 2021 Lois Weisz said 135,000 slaps for 6-8 hours)

WPM Time (Hours and Minutes)
40 8 hours 20 minutes
50 6 hours 40 minutes
60 5 hours 33 minutes
70 4 hours 17 minutes
80 4 hours 10 minutes
90 3 hours 20 minutes
100 3 hours 20 minutes
110 3 hours 0 minutes
120 2 hours 46 minutes
130 2 hours 35 minutes
140 2 hours 22 minutes
150 2 hours 13 minutes
160 2 hours 5 minutes
170 1 hour 52 minutes
180 1 hour 40 minutes
190 1 hour 34 minutes
200 1 hour 40 minutes
210 1 hour 30 minutes
220 1 hour 27 minutes
230 1 hour 26 minutes
240 1 hour 20 minutes
250 1 hour 12 minutes
260 1 hour 9 minutes
270 1 hour 7 minutes
280 1 hour 4 minutes
290 1 hour 2 minutes
300 1 hour 0 minutes
310 0 hours 58 minutes
320 0 hours 56 minutes
330 0 hours 54 minutes
340 0 hours 52 minutes
350 0 hours 51 minutes
360 0 hours 50 minutes

Thursday, November 7, 2024

hamster cms links not working fix

in htdocs create a .htaccess file with


RewriteEngine On

# Rewrite /page-name to /?p=page-name
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?p=$1 [QSA,L]

after that, restart xampp

also if the cms isn't working properly make sure the htdocs dir has proper permissions set for reading and writing.

hamster cms DOS8 (best dark theme)

ascii_yellow is also a good theme

Monday, November 4, 2024

protactile

I learned about this today and I think its the greatest thing

Thursday, October 31, 2024

joining mp3s in the term

mp3 file comcatenation
this article explains a few other ways to do it. alternative to sox like ffmpeg and in great detail.

How to add mp3 support to sox on debian linux


sudo apt install sox libsox-fmt-mp3

joining mp3s with different sample rates

Making this dancehall mix but first doing a conversion in a temporary directory before outputing the file


# Create a temporary directory
tmp_dir=$(mktemp -d)

# Convert the MP3 files to the temporary directory
for file in *.mp3; do
  sox "$file" -r 44100 "$tmp_dir/$file"
done

# Merge the converted files into a single output file in the current directory
sox "$tmp_dir"/*.mp3 dancehall.mp3

# Remove the temporary directory
rm -r "$tmp_dir"

mixing mp3s in the commandline using mp3wrap

Pretty sure sox used to work for me to join mp3s but its not now.. oh well heres aanother way


mp3wrap output.mp3 ./*.mp3

Tuesday, October 29, 2024

bugs & exploits - tom scott

Toms a great story teller. Embedded in this post is a youtube playlist where he explains historical bugs and exploits. I came across this when looking up the heartbleed hack from 2014.

Computer stuff is really easy to make sound boring. one of the comments on the video says...

"Your ability to speak clear coherent thoughts to a camera is incredible."

Monday, October 28, 2024

Thursday, October 3, 2024

Literary Theme Analysis: Amillie -Lil' Wayne

Lately this song has been popping into my head while biking. I love the Beat by Bangladesh. Lil Wayne's "A Milli" consists of a single, continuous verse without any traditional chorus or hook. The verse is long, and there are no clear breaks between different sections, making it more like one extended stream of lyrics rather than multiple distinct verses. The song is built around a repeating instrumental loop, allowing Lil Wayne's rapid-fire delivery to carry the track from start to finish.

The lyrics to Lil Wayne's "A Milli" showcase a mix of themes commonly found in rap music, including wealth, power, street credibility, braggadocio, and defiance. Here's a breakdown of some key themes:

1. Wealth and Success

  • Lil Wayne repeatedly emphasizes his millionaire status and material wealth throughout the song. He mentions luxury cars (Maserati, Lamborghini), expensive watches, and large sums of money. This displays a lifestyle of excess and success, which is a common theme in hip-hop.
  • The refrain “A millionaire, I’m a Young Money millionaire” reinforces his financial success and his association with the Young Money label, symbolizing his high status in the music industry.

2. Power and Violence

  • References to power are evident in his lines about the “almighty dollar” and “ch-cha-cha-chopper,” implying that his time and actions are driven by money and force. He also alludes to violence with phrases like "if you can't beat 'em, then you pop 'em" and "we pop 'em like Orville Redenbacher," signaling street aggression and dominance.
  • There’s also a direct challenge to the police with the line "mother-fuck a copper" and references to evading law enforcement.

3. Defiance and Individualism

  • Lil Wayne portrays himself as untouchable and rebellious, suggesting that no one can catch him or bring him down. This individualism comes through in lines like “you can’t catch ‘em, you can’t stop ‘em.”
  • He also declares that he follows “goon rules,” signaling that he operates outside of mainstream society's norms and values.

4. Braggadocio and Self-Confidence

  • Lil Wayne’s confidence is evident in his repeated statements about being "ill," not just in terms of physical sickness but as a metaphor for his skill and talent. He compares himself to rap icons like B.I.G., Jay-Z, Tupac, and André 3000, positioning himself within the highest echelon of rappers.
  • The lyrics boast about his ability to manipulate situations, making audacious claims like “I can turn a crack rock into a mountain.” These hyperbolic statements serve to elevate his status even further.

5. Street Credibility and Toughness

  • He repeatedly emphasizes toughness, referencing "goons" and "goblins," positioning himself as someone who commands respect and isn't afraid of confrontation.
  • The imagery of being tougher than “Nigerian hair” and living by "goon rules" adds to his image as someone steeped in street culture.

6. Sexual Conquests and Misogyny

  • Lil Wayne makes several references to women in a sexualized and often demeaning way, such as when he speaks of a "Sicilian bitch" or says, "Yeah, I ate a shy bitch." He views women primarily as objects or conquests, with his relationships often framed around power and dominance.
  • Lines like "I got so many bitches, like I’m Mike Lowrey” (referencing the character from Bad Boys) further emphasize his promiscuity and objectification of women.

7. Surreal and Playful Wordplay

  • The song also contains wordplay and surreal metaphors that showcase Lil Wayne’s lyrical prowess. For instance, lines like “I don’t owe you like two vowels” and “I be the shit, now you got loose bowels” are examples of clever, albeit crude, wordplay that add a playful tone to his braggadocio.
  • His humor and wit shine through even in his more aggressive lines, which enhances his unique lyrical style.

Overall, the lyrics of "A Milli" revolve around Lil Wayne’s expression of dominance, both in terms of wealth and power, his untouchable status in the rap game, and his street credibility. These themes are bolstered by vivid imagery, playful wordplay, and a sharp sense of self-confidence.

Wednesday, October 2, 2024

getting bluetooth keyboard working on linux mint

It wasn't pairing. kept asking for a pin and then timing out.


bluetoothctl
agent NoInputNoOutput
default-agent

That gets it working but to persist you need to edit the configs.


sudo vim /etc/bluetooth/main.conf

[Policy]
AutoPair=true

Thursday, September 19, 2024

Terminal Based Calendar: ncal

A nice simple Calendar.

Terminal Typing Game: Smassh

I Love this it looks like a slimmed down version of monkeytype. I always wished I could run monkeytype on a raspberry pi but the browser eats up too much resourcs so this is a perfect alternative. Its made with python

It can be installed with:


pip install smassh
The Github Page For Smassh

Wednesday, September 11, 2024

disabled scenarios in make

integromat disabled my 'scenario' because i didn't have a closing h2 tag supposedly. I wish there was an ignore feature so i don't need to log to the website to fix it. You end up with a queue of files when that happens and a bunch of error emails to delete.

Hmm... maybe there is a way I just haven't found it yet.

parsefeed python library to compile blogposts into pdfs

extract rss feed to html with parsefeed python


import feedparser

# URL of the Atom feed
feed_url = "https://ecksesontress.blogspot.com/feeds/posts/default"

# Parse the feed
feed = feedparser.parse(feed_url)

# Open file for writing (creates the file if it doesn't exist)
with open('blogposts.html', 'w') as file:
    # Write the beginning of the HTML document
    file.write("\n\nBlog Posts\n\n\n")
    
    # Iterate over the entries (posts) and extract titles and summaries
    for entry in feed.entries[:10]:  # Limit to the first 10 entries
        title = entry.title
        summary = entry.summary  # This is typically the body content
        
        # Write the title as an 

and the summary (body) below it file.write(f"

{title}

\n") file.write(f"{summary}\n") file.write("
\n") # Separator for readability # Write the end of the HTML document file.write("\n\n")

Sunday, September 8, 2024

vim 9 precompiled

debian only goes up to vim 8. Trying to get coc snippets to work for typescript and not use neovim. This ppa has a precompiled vim 9


sudo add-apt-repository ppa:jonathonf/vim
sudo apt update
sudo apt install vim

use elisp to find lowest price per category

evaluated.org
** Lowest Price Item In Each Category

| Category             | Price | Item            |
|----------------------|-------|-----------------|
| beverages            | 1.95  | canned pop      |
| side-orders          | 1.15  | gravy on fries  |
| subs                 | 5.45  | veggie (small)  |
| hot-sandwiches       | 11.95 | hot hamburger   |
| on-a-bun             | 5.25  | hamburger       |
| ask-your-server      | 3.95  | s.o.t.d         |
| salads               | 4.15  | small tossed salad |
| sandwiches           | 5.15  | fried egg       |
| pitas                | 6.25  | breakfast       |
| omelets              | 9.95  | cheese          |
| french-toast-and-pancakes | 3.75 | 1 lg pancake |
| breakfast-sides      | 1.75  | muffin          |
| breakfast            | 9.25  | meatless        |


** lisp code to find lowest price per category

#+BEGIN_SRC emacs-lisp :results output
(defun find-lowest-price-per-category ()
  "Find the item with the lowest price for each category from an Org table."
  (interactive)
  ;; Ensure we're in an Org table
  (when (org-at-table-p)
    (let ((table (org-table-to-lisp))
          (result '()))
      ;; Skip the header row
      (dolist (row (cdr table))
        (let* ((category (nth 0 row))
               (item (nth 1 row))
               (price (string-to-number (nth 2 row)))
               (existing-entry (assoc category result)))
          (if existing-entry
              (let ((current-lowest (cdr existing-entry)))
                (if (< price (car current-lowest))
                    (setcdr existing-entry (cons price item))
                  ;; Do nothing if the current price is not lower
                  ))
            (push (cons category (cons price item)) result))))
      ;; Print the result in the buffer
      (with-output-to-temp-buffer "*Lowest Prices by Category*"
        (dolist (entry result)
          (let ((category (car entry))
                (lowest (cdr entry)))
            (princ (format "%s: %.2f - %s\n" category (car lowest) (cdr lowest)))))))))

;; Bind the function to a key for easy access
(global-set-key (kbd "C-c l") 'find-lowest-price-per-category)
#+END_SRC