11 votes

Ajouter des effets sonores de style cinéma au terminal

Je veux avoir des effets sonores de style cinéma dans le terminal. Vous savez, quand chaque touche et chaque ligne émet un petit bip sympa. (Quelque chose comme ça.) J'ai utilisé KeyClick mais c'est seulement pour la saisie au clavier. Je veux aussi des effets lorsque les caractères sont lus à l'écran, etc.

Je sais que c'est superflus comme l'enfer. Et que ça va probablement m'ennuyer dans les cinq minutes. Mais ce sera cinq minutes glorieuses.

10voto

John Fiala Points 3050

Question amusante :)

Je ne sais pas comment obtenir des effets sonores pour tout, mais vous pourriez faire quelque chose comme ceci pour obtenir des effets sonores pour quelques éléments :

1) Ouvrez votre .profile (ou .bashrc ou tout autre endroit où vous aimez garder vos personnalisations) en ouvrant une fenêtre de terminal et en tapant :

open .profile

2) Ajoutez les quelques lignes suivantes au bas du fichier :

function top() { afplay /System/Library/Components/CoreAudio.component/Contents/SharedSupport/SystemSounds/accessibility/Sticky\ Keys\ ON.aif; command top;}
function ls() { command ls; afplay /System/Library/Components/CoreAudio.component/Contents/SharedSupport/SystemSounds/accessibility/Slow\ Keys\,\ Key\ Registered.aif; }

3) Essayez de taper 'ls' pour obtenir la liste des répertoires ou 'top' pour voir la liste des processus en cours d'exécution. Vous pourrez entendre les résultats de ces commandes.

En ajoutant ces deux lignes, nous déclarons deux nouvelles fonctions avec les mêmes noms que les commandes bash existantes. Nous remplaçons la commande elle-même de sorte que nous pouvons jouer un peu d'audio et ensuite exécuter la commande elle-même (ou vice versa comme montré dans l'exemple 'top').

Les fichiers audio que j'utilise actuellement sont des fichiers audio par défaut (du moins sur Lion) qui sont utilisés pour les fonctions d'accessibilité. Je les ai choisis pour que vous puissiez faire un copier-coller et voir l'astuce en action, mais vous pouvez utiliser n'importe quel fichier audio à la place.

Voici un site avec un tas d'effets sonores de science-fiction que vous pourriez utiliser à la place de ceux que j'emprunte à l'OS :

http://fxhome.com/sounds/

0voto

rookie Points 101

Je ne suis pas sûr de la partie "frappe"... mais vous pourriez lui faire imprimer la sortie d'une commande de terminal comme dans les films, c'est-à-dire que chaque ligne est imprimée caractère par caractère et émet un petit bip pour chaque caractère. C'est cool au début, puis ça devient vraiment ennuyeux. Il serait amusant d'avoir un terminal permettant d'activer et de désactiver cette fonction. Évidemment, c'est assez limité, mais cela pourrait être un projet amusant à développer.

from subprocess import PIPE, Popen
import os

from time import *
import sys
from playsound import playsound

def print_immediately(string):
    sys.stdout.write(string)
    sys.stdout.flush()

def backspace():
    print('\r', end='')

def printline(x, silent=False):
    n = len(x)
    for i in range(n):
        print_immediately(x[:(i+1)])
        if not silent:
            beep()
        sleep(0.01)
        backspace()
    sys.stdout.write('\n')
    sys.stdout.flush()

def printlines(x, silent=False):
    result = str(x.decode("utf-8"))
    lines = str.split(result, "\n")
    for line in lines:
        printline(line, silent=False)

def beep():
    playsound('/Users/Blah/Projects/console/beep.wav', block=False)

def cmdline(command):
    process = Popen(
        args=command,
        stdout=PIPE,
        shell=True
    )
    return process.communicate()[0]

while True:
    command = input("user: ")
    if(command == 'exit'):
        break
    else:
        try:
            if command.find("cd ") != -1:
                dir = command.replace("cd ", "")
                os.chdir(os.path.expanduser(dir))
                print(dir)
            else:
                printlines(cmdline(command))
        except:
           print("Error!")

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X