Je pense à créer une nouvelle disposition de clavier pour la programmation. Maintenant, je programme principalement en HTML, JavaScript / jQuery / CoffeeScript, CSS / LESS / SASS, bien que je puisse bientôt essayer les scripts shell et RegEx, avec peut-être LUA, C ++ et Java dans quelques années. Je veux avoir une preuve scientifique des placements de la clé. J'ai des idées / exigences, certaines m'ont inventé, certaines prises ou dérivées d'autres:
- Presque toutes les clés peuvent être réorganisées
- RETURN , Left SHIFT , Left CONTROL , SPACE-bar et TAB doivent rester, mais tous les autres, y compris les chiffres, les symboles et les touches de mouvement sont ouverts au déplacement
- Cela pourrait être optimal pour laisser zxcv et peut-être s pour rester en place, en raison des habitudes courantes d'annulation / coupure / copie / collage / sauvegarde :)
- SUPPRIMER la clé susceptible d'être déplacée à l'endroit où se trouve VERR MAJ :)
- Il est peu probable que les parenthèses correspondantes comme () {} [] <> côte à côte soient conservées; voir ci-dessous
- La seule façon précise à mon humble avis de compter l'utilisation des clés est l'enregistrement des clés, et non le nombre de clés des fichiers:
- Une grande partie de la «programmation» consiste à envoyer des e-mails, à publier sur des forums, à Twitter, à signaler des bogues, à naviguer sur le Web, etc.
- Je crois qu'une grande partie de l'utilisation du clavier est le «mouvement»; tabulation entre les champs, page suivante, déplacement des curseurs, etc. Ceux-ci ne sont pas capturés par les sorties de fichier
- De nombreux éditeurs utilisent la saisie semi-automatique et les macros, donc les délimiteurs rapprochés:)}]> peuvent ne pas être aussi souvent tapés que les ouvreurs, donc seuls les fichiers de journalisation et non d'analyse des fichiers seront précis.
Alors mes questions:
- Quels sont les enregistreurs de frappe de logiciels libres / open source sûrs , qui ne téléchargeront pas de fichiers à moins que vous n'envoyiez vous-même un fichier séparé? Je préférerais NE PAS collecter les noms de connexion et les mots de passe, non seulement pour des raisons de sécurité, mais aussi parce que cela peut jeter de mon analyse à mon humble avis.
- Quels programmes peuvent être utilisés côté client pour digérer les décomptes de paires et de paires? Ou comment en construire un au mieux?
- Où est-il préférable de trouver des bénévoles pour aider?
Meilleures recherches à ce jour: http://www.michaelcapewell.com/projects/keyboard/layout_capewell.htm
http://viralintrospection.wordpress.com/category/technology/keyboard-layouts/
& Wikipedia: Keyboard_layout # Non-QWERTY_keyboards_for_Latin_scripts
TIA!
keyboard
keyboard-layout
ergonomics
keylogger
tomByrer
la source
la source
<>{}[]
(et d'autres clés qui nécessitent actuellement un décalage) leurs propres clés - je ne me considérerais pas vraiment comme un programmeur, mais je sais que c'est ce qui est le plus gênant lors de l'écriture de scripts bash.Réponses:
Utilisez un programme comme WhatPulse pour enregistrer quelles touches sont frappées et combien de fois.
Après avoir demandé sur le réseau IRC FreeNode comment rassembler les fréquences clés, un utilisateur m'a conduit à ceci:
count_digraphs()
et appuyez sur Entrée.Les résultats sont lus comme ceci: ce
"ar" 7 17 10 "ra"
qui signifie que 'ar' a été pressé 7 fois, 'ra' a été pressé 10 fois, et tous ensemble 'ar' et 'ra' ont été pressés 17 fois ensemblela source
Les clés de déplacement dans les éditeurs sont le plus souvent adaptées pour s'adapter à une utilisation aussi efficace que possible de QWERTY, et elles devront donc certainement être remappées si vous changez la disposition des touches et souhaitez le placement optimal de tout ce que vous recherchez. Par exemple, dans Vim, les boutons HJKL sont utilisés pour une raison avec QWERTY, et devraient très probablement être remappés au même emplacement après la modification de la carte de touches.
Ce que je veux dire, c'est que cela ne vous aidera pas beaucoup à suivre les mouvements et à éditer les clés et à les utiliser comme base pour une nouvelle disposition, car elles sont facilement reconfigurables (dans n'importe quel éditeur qui en vaut la peine, et puisque nous parlons d'un programmeur). , nous parlons très probablement de Vim ou Emacs), ne devrait pas interférer avec le placement des clés littérales et a déjà été optimisé (encore une fois: nous ne parlons pas de Bloc-notes).
Vous essayez de résoudre un problème qui est un moyen inefficace de productivité , en particulier pour un programmeur , ** imho **. Il y aurait un effet beaucoup plus important en apprenant simplement plus sur les outils (encore une fois: probablement Vim / Emacs). Vous constaterez que de moins en moins de temps est réellement consacré à l'écriture de caractères lors de la programmation, et plus de temps (mais plus efficace) est consacré à l'auto-complétion, au marquage automatique, à l'indentation automatique, aux recherches de définition de fonction rapide, etc. pour faire tout cela sont déjà adaptés pour permettre l'efficacité, et le gros boost de vitesse vient simplement avec la familiarité. Ainsi, je soutiens qu'une disposition de clavier différente est tout aussi destructrice pour la productivité , car vous en avez déjà beaucoupannées d'exercice QWERTY. Si le même temps de formation analytique était consacré à QWERTY que les personnes qui changent de disposition passent sur Dvorak, ils remarqueraient également une augmentation de la vitesse. La vitesse s'accompagne d'une formation explicite.
Si vous étiez rédacteur / traducteur / auteur / etc., quelqu'un qui passe réellement son temps à travailler avec la signification littérale des touches, alors une disposition différente pourrait être utile. Pour un programmeur, la meilleure astuce est généralement d'obtenir au moins une disposition de clavier en anglais, car les idiomes de programmation ont été façonnés par ceux-ci et leur placement de clé (sur ma disposition de clé locale,
@$[]{}~
sont tous derrière AltGr qui est assez sous-optimal).tldr: Dvorak / Colemak / [la prochaine "meilleure chose depuis le pain en tranches"] (sans doute) ne résout un problème que pour ceux qui saisissent beaucoup de texte fluide dans une langue spécifique (le plus souvent l'anglais). Pour la programmation, les clés nécessaires n'ont pas été soumises à la même restriction que le langage littéral, et donc il a déjà été optimisé pour son objectif (qui n'est pas seulement "écrire aussi vite que possible"; il s'appuie davantage sur des opérations logiques. Voir Vigueur). Je crois que le temps consacré à l'apprentissage de mises en page alternatives et la confusion qui se produit très souvent à maintes reprises ne vaut certainement pas l'effort dans la plupart des cas (pas seulement votre propre confusion; d'autres qui s'asseyent au même terminal que vous avez utilisé pour la dernière fois jetteront choses à vous), y compris beaucoup du programmeur.
la source