J'édite un fichier HTML dans Vim et je veux que le navigateur se rafraîchisse chaque fois que le fichier en dessous change.
Existe-t-il un plugin pour Google Chrome qui écoutera les modifications apportées au fichier et actualisera automatiquement la page chaque fois que j'enregistre une modification dans le fichier? Je sais qu'il y a XRefresh pour Firefox mais je n'ai pas du tout pu faire fonctionner XRefresh.
Serait-il difficile d'écrire un script pour le faire moi-même?
vim
google-chrome
automation
Kevin Burke
la source
la source
Réponses:
Je suppose que vous n'êtes pas sur OSX? Sinon, vous pourriez faire quelque chose comme ça avec applescript:
http://brettterpstra.com/watch-for-file-changes-and-refresh-your-browser-automatically/
Il existe également un plugin pour Chrome appelé «auto refresh plus» où vous pouvez spécifier un rechargement toutes les x secondes:
https://chrome.google.com/webstore/detail/auto-refresh-plus/oilipfekkmncanaajkapbpancpelijih?hl=en
la source
keyword
parwatch_keyword
dans la ligne suivante:if (URL of atab contains "#{keyword}") then
Solution JavaScript pure!
Live.js
Ajoutez simplement ce qui suit à votre
<head>
:J'ai copié cette réponse presque textuellement d' ici , car je pense que c'est plus facile et plus général que la réponse actuellement acceptée ici.
la source
php -S localhost:8080
python3 -m http.server
, ainsi que beaucoup d'autres pour d'autres langages / outils .Mise à jour : Tincr est mort.
Tincr est une extension Chrome qui rafraîchira la page chaque fois que le fichier en dessous change.
la source
Handy Bash one-liner pour OS X, en supposant que vous ayez installé fswatch (
brew install fswatch
). Il surveille un chemin / fichier arbitraire et actualise l'onglet Chrome actif lorsqu'il y a des modifications:En savoir plus sur fswatch ici: https://stackoverflow.com/a/13807906/3510611
la source
En ajoutant une seule balise Meta à votre document, vous pouvez demander au navigateur de se recharger automatiquement à un intervalle donné:
Placée dans la balise head de votre document, cette balise meta demandera au navigateur d'actualiser toutes les trois secondes.
la source
http://livereload.com/ - application native pour OS X, version Alpha pour Windows. Open source à https://github.com/livereload/LiveReload2
la source
Utilisez Gulp pour regarder les fichiers et Browsersync pour recharger le navigateur.
Les étapes sont:
Dans la ligne de commande, exécutez
Créez gulpfile.js avec le contenu suivant:
Courir
Modifiez le HTML, enregistrez et voyez votre navigateur se recharger. La magie se fait grâce à l'injection à la volée d'une balise spéciale dans vos fichiers HTML.
la source
Je sais que c'est une vieille question, mais au cas où cela aiderait quelqu'un, il existe un package reload npm qui la résout.
Dans le cas où vous ne l'exécutez pas sur un serveur ou avez reçu l'erreur
Live.js doesn't support the file protocol. It needs http.
Installez-le simplement:
puis dans votre répertoire index.html, exécutez:
Il démarrera un serveur qui s'actualisera à chaque fois que vous enregistrez vos modifications.
Il existe de nombreuses autres options au cas où vous l'exécuteriez sur le serveur ou autre chose. Consultez la référence pour plus de détails!
la source
L' extension LivePage Chrome peut facilement être configurée pour surveiller les modifications des fichiers locaux.
la source
Il existe une application java pour os x et Chrome appelée Refreschro. Il surveillera un ensemble donné de fichiers sur le système de fichiers local et rechargera Chrome lorsqu'une modification est détectée:
http://neromi.com/refreschro/
la source
Si vous êtes sous GNU / Linux, vous pouvez utiliser un navigateur assez sympa appelé Falkon . Il est basé sur le WebEngine Qt . C'est comme Firefox ou Chromium - sauf qu'il actualise automatiquement la page lorsqu'un fichier est mis à jour. L'actualisation automatique n'a pas beaucoup d'importance que vous utilisiez vim, nano ou atom, vscode, brackets, geany, mousepad, etc.
Sur Arch Linux, vous pouvez installer Falkon assez facilement:
Voici le package snap.
la source
Une solution rapide que j'utilise parfois est de diviser l'écran en deux, et à chaque fois qu'une modification est apportée, cliquez sur le document xD.
la source
Dans node.js, vous pouvez câbler primus.js (websockets) avec gulp.js + gulp-watch (un exécuteur de tâches et un écouteur de changement, respectivement), de sorte que gulp informe la fenêtre de votre navigateur qu'elle doit être actualisée chaque fois que html, js , etc., changez. Ceci est indépendant du système d'exploitation et je le fais travailler dans un projet local.
Ici, la page est servie par votre serveur Web, et non chargée en tant que fichier à partir du disque, ce qui ressemble plus à la réalité.
la source
Cela fonctionne pour moi (dans Ubuntu):
Vous devrez peut-être installer les packages inotify et xdotool (
sudo apt-get install inotify-tools xdotool
dans Ubuntu) et remplacer les arguments de--class
par les noms réels de votre navigateur et terminal préférés.Démarrez le script comme décrit et ouvrez simplement index.html dans un navigateur. Après chaque enregistrement dans vim, le script focalisera la fenêtre de votre navigateur, l'actualisera, puis retournera au terminal.
la source
xdotool search --name 127.0.0.1 windowactivate key F5
pour travailler sur localhost (127.0. 0.1) uniquement, bien sûr. Maintenant, je dois le rebrancher dans le script.La solution la plus flexible que j'ai trouvée est l' extension chrome LiveReload associée à un serveur de garde .
Regardez tous les fichiers d'un projet ou uniquement ceux que vous spécifiez. Voici un exemple de configuration Guardfile:
L'inconvénient est que vous devez configurer cela par projet et cela aide si vous êtes familier avec ruby.
J'ai également utilisé l'extension Tincr chrome - mais elle semble être étroitement liée aux frameworks et aux structures de fichiers. (J'ai essayé de câbler tincr pour un projet jekyll mais cela ne m'a permis de regarder qu'un seul fichier pour les changements, sans tenir compte des inclusions, des changements partiels ou de mise en page). Cependant, Tincr fonctionne très bien dès la sortie de la boîte avec des projets tels que des rails qui ont des structures de fichiers cohérentes et prédéfinies.
Tincr serait une excellente solution s'il permettait des modèles de correspondance tout compris pour le rechargement, mais le projet est toujours limité dans son ensemble de fonctionnalités.
la source
Cela peut être fait en utilisant un simple script python.
Tous les détails peuvent être consultés ici .
la source
Basé sur la réponse d'Attekei pour OSX:
Jetez tout cela dans
reload.scpt
:Cela rechargera le premier onglet qu'il trouve qui commence par
file://
et se termine par le premier argument de ligne de commande. Vous pouvez le modifier à votre guise.Enfin, faites quelque chose comme ça.
fswatch -o
renvoie le nombre de fichiers qui ont changé à chaque événement de modification, un par ligne. Habituellement, il s'imprimera simplement1
.xargs
lit ces1
s dans et-n1
signifie qu'il passe chacun d'eux comme argument à une nouvelle exécution deosascript
(où il sera ignoré).la source
tab.title.includes(argv[0])
comme conditionnel, je peux faire correspondre le titre de la page qui peut être moins difficile que l'URL, et fonctionne lorsque vous utilisez un serveur local plutôt que file: //.Installer et configurer
chromix
Maintenant, ajoutez ceci à votre
.vimrc
changez le port pour ce que vous utilisez
la source
Enregistrez ce code dans un fichier livereload.js et incluez-le en bas du script HTML comme ceci:
Cela va rafraîchir la page toutes les 100 mili-secondes. Toutes les modifications que vous apportez au code sont instantanément visibles aux yeux.
la source
Ok, voici ma solution brute de raccourci clavier automatique (sous Linux, essayez la clé automatique ). Lorsque vous appuyez sur le raccourci clavier de sauvegarde , activez le navigateur, cliquez sur le bouton de rechargement , puis revenez à l'éditeur. Je suis juste fatigué de faire fonctionner d'autres solutions. Ne fonctionnera pas si votre éditeur effectue une sauvegarde automatique.
la source
Solution hors ligne utilisant R
Ce code va:
actualisez le navigateur à chaque fois qu'une modification est enregistrée dans le fichier .html.
Des solutions similaires existent pour python, etc.
la source
Ajoutez ceci à votre HTML
Pendant que vous modifiez, la page de votre navigateur est floue, en revenant pour la regarder, l'événement de mise au point est déclenché et la page se recharge.
la source
puis entrez simplement le répertoire que vous souhaitez surveiller exécutez "watch_refresh_chrome"
la source