Comments (4)
I have my settings in an external file. Here's how I set it up on NixOS.
- Install
http-server
from nixpkgs. - Copy your Surfingkeys settings to
surfingkeys.js
. - Set server to autostart on login:
http-server -p 8085 -c-1 ~/dotfiles/surfingkeys/surfingkeys.js
- In Surfingkeys settings, add
http://127.0.0.1:8085/surfingkeys.js
in the "Load Settings" box, then click save.
Feel free to change the port and path in step 3 to wherever your surfingkeys.js file is located. The -c-1
part disables the cache so it always shares the current version of the file.
After that, Surfingkeys will automatically load the file from the server.
To make changes to the config:
- Edit the file using your text editor and save.
- Open Surfingkeys settings (;e) (confirm settings updated if you like)
- Click save to apply updated settings and close the tab.
from surfingkeys.
I have my settings in an external file. Here's how I set it up on NixOS.
- Install
http-server
from nixpkgs.- Copy your Surfingkeys settings to
surfingkeys.js
.- Set server to autostart on login:
http-server -p 8085 -c-1 ~/dotfiles/surfingkeys/surfingkeys.js
- In Surfingkeys settings, add
http://127.0.0.1:8085/surfingkeys.js
in the "Load Settings" box, then click save.Feel free to change the port and path in step 3 to wherever your surfingkeys.js file is located. The
-c-1
part disables the cache so it always shares the current version of the file.After that, Surfingkeys will automatically load the file from the server.
To make changes to the config:
- Edit the file using your text editor and save.
- Open Surfingkeys settings (;e) (confirm settings updated if you like)
- Click save to apply updated settings and close the tab.
I've been playing with doing a similar setup, but I'd really love to find a way to not need to do step 4, since that is the only part that I can't automate entirely. It seems that this is a pretty difficult thing to get setup though. Most extensions don't provide an easy way to do any of this.
Is your nix configuration viewable somewhere? I'd love to see how you handled starting http-server
.
One option I've been considering is to have a wrapper for firefox
or chromium
that copies a base profile that has my settings in it to the new profile the first time it is run. But, that doesn't handle updates very gracefully.
from surfingkeys.
Unfortunately, I don't do anything fancy with nix to start the server.. I just start it in my Hyprland config on login. If I used home-manager, I'd probably configure the autostarts there.
Step 4 only needs to be done once, but if your trying the have everything setup automatically by nix during install, I can see why having to manually enter it is undesirable. From what I've read so far, declaring extension configs is difficult as they are stored in an sql database in the firefox profile. Maybe it's possible to add your firefox profile to your config and have it copy it in place during install? Probably need home-manager for that though.
Aside from that, it would be nice if Surfingkeys was able detect a change in the config and load it automatically to save opening the settings page and clicking 'save' each time.
from surfingkeys.
Yeah, most extensions make this very difficult...
The best option I have come up with is to make wrapper for the browser that will copy my settings from somewhere in my nixstore before starting the browser... But, that is very messy. Also, that approach means that anything that could possibly include any sensitive data (like the extension for my password manager) needs to NOT be included.
I'll keep playing with it. The solution that tridactyl uses is nice, but it is messy and error prone too.
I've even considered forking some extensions, including surfingkeys, to add support for loading the settings from a browser policy. It is pretty simple for an extension to do that, but from what I've found very few extensions have implemented this.
from surfingkeys.
Related Issues (20)
- [FR] Beautiful Chinese font
- can not work for `https://lobste.rs/` HOT 2
- Surfingkeys version on Microsoft Edge Addons still 1.13.0
- Google Docs can't type. HOT 1
- Using '/' within the guide ('?') then leaving the guide will lock your position within the guide
- Feature request: Allow omnibar to bind to a custom action instead of opening Url
- Expose hints.createInputLayer();
- 无法打开pdf
- Search result letter doesn't go away in input search
- How to display and switch between tabs of the current window only, when multiple windows are open?
- edge(mac) close surfingkeys automatically edge(mac平台)下会自动关闭surfingkeys HOT 1
- Wrong cursor position in Vim Editor
- Hints not showing on Pypi.org
- Bug: TabHistory is not real, and close browser will clear all tabhistory in surfing keys.
- 请问如何将替换“Search selected with xxxx”“转变为 用xxxx搜索选中文本
- "č" character doesn't work in hints
- Failed to connect neovim, please make sure your neovim version 0.5 or above. HOT 1
- Is it possible to hide specific options in the Omnibar without disabling them directly?
- certain functions not working
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from surfingkeys.