Author

Matt

Browsing
Matt est formateur, développeur expert WordPress et WooCommerce, et administrateur réseau chez Codeable.

Déroulé de l’épreuve d’expression orale

L’expression orale de LV1 ou LV2 se passe durant le troisième trimestre. L’épreuve compte pour le quart (25%) de la note finale de l’épreuve d’anglais.

Vous allez tirer au sort une des quatre notions au programme:

  • Mythes et héros
  • Espaces et échanges
  • Idées de progrès
  • Lieux et formes du pouvoir

L’épreuve d’expression orale du Bac se déroule en trois temps :

  • 10 minutes de préparation au brouillon,
  • 5 minutes de présentation de la notion (pour les L uniquement: 10 minutes de présentation)
  • 5 minutes de discussion avec l’examinateur (pour les L uniquement: 10 minutes de discussion)

Pour les sections ES et S, l’épreuve se déroulement habituellement avec le professeur de langue de l’année de terminale, dans votre lycée.

La section L est interrogée par un autre examinateur, dans un autre lycée, au moment des épreuves orales finales du baccalauréat, aux alentours du 20 juin et plus.

Préparation

Vous avez 10 minutes au brouillon pour préparer vos notes d’exposé. Je vous conseille de rédiger l’introduction et la conclusion, de manière à être à l’aise au début et à la fin de l’épreuve, pour la première impression et la dernière.

Faites un plan détaillé: grandes parties, arguments, exemples mais ne tentez pas de réécrire l’intégralité de la notion, vous n’en aurez clairement pas le temps.

Exposé

Introduction

Dans l’introduction, commencez par introduire la notion que vous allez exposer, en relation avec les documents et débats que vous avez abordés en cours.

Introduisez ensuite la problématique : elle va vous permettre de vous interroger sur une question qui structurera votre exposé et à laquelle vous donnerez une réponse en conclusion, après la mise en balance de vos arguments et exemples.

Annoncez votre plan clairement. Votre plan peut être en deux ou trois parties, pas plus. Je vous conseille de privilégier un plan thématique, qui aborde la problématique de votre notion sous différents angles.

Le développement

Le développement est le cœur de l’épreuve : vous allez faire référence aux documents vus en cours mais également à des documents ou contenus que vous avez pu lire, voir ou entendre en dehors des cours. Cela va vous permettre d’avoir un point de vue à la fois critique et personnel, avec des arguments et exemples qui vont vous démarquer des autres candidats.

Comptez deux à trois parties, cela dépend principalement du nombre d’arguments et d’exemples que vous avez dans chaque partie, et de votre temps d’épreuve (suivant votre filière).

N’oubliez pas de structurer votre discours avec des mots de liaison, pour enchaîner vos idées, exprimer la contradiction, donner votre point de vue… Recherchez la cohérence, l’enchainement doit être à la fois fluide et logique.

La conclusion

La conclusion est le fruit de votre réflexion argumentée, elle vous permet d’apporter une réponse à la problématique que vous avez posée en introduction.

Au niveau de la stratégie, je vous conseille d’ouvrir le sujet sur des éléments que vous connaissez bien et sur lesquels vous souhaiteriez que l’examinateur vous interroge. Vous pouvez glisser quelques références, ce sont les derniers éléments que l’examinateur notera et il s’en servira très certainement pour la phase d’interaction.

Interaction

Lors de la phase d’interaction, l’examinateur va se servir de ce que vous avez dit durant votre exposé : il peut demander des clarifications ou un approfondissement de certains aspects. Il peut aussi « mordre à l’hameçon » de votre stratégie d’ouverture.

L’interaction permet à l’examinateur d’évaluer votre capacité à vous engager dans une discussion sur un sujet que vous maitrisez. C’est le moment de donner votre point de vue spontané sur le sujet. Vous pouvez élargir et ouvrir le champ du sujet.

Notation

Prenez conscience des éléments de la grille d’évaluation, elle donne pas mal de pistes sur les attendus de votre prestation durant l’épreuve:

Les attendus de l’épreuve d’expression orale

Bon courage.

Format de l’épreuve

Vous allez entendre un document audio trois fois: vous disposerez d’une minute de pause après la première et la seconde écoute. A l’issue de la troisième écoute, vous aurez dix minutes pour rédiger en français un compte-rendu de ce que vous aurez compris.

Le document audio fait une minute et trente secondes. En comptant les pauses et le temps de rédaction, la durée totale de l’épreuve est de 16 minutes et 30 secondes.

10 conseils pour bien réussir le compte-rendu de la Compréhension Orale du bac

1. Le document audio que vous allez entendre comporte un titre. Ce titre va vous éclairer sur le thème qui va être abordé. Utilisez-le pour inférer ce que vous allez entendre.

2. Il est normal de ne pas tout comprendre, surtout à la première écoute. Restez concentré, ne paniquez pas. Au fil des différentes écoutes, vous allez comprendre de plus en plus de choses.

3. Utilisez une grande feuille de brouillon sur laquelle vous ne noterez que des mots-clés, et non des phrases entières. Laissez de l’espace entre vos notes de façon à pouvoir les compléter lors des trois écoutes.

4. Lors des pauses d’une minute entre les écoutes, vous pourrez rajouter ce que vous n’avez pas eu le temps d’écrire mais que vous avez mémorisé. Vous pourrez également commencer à organiser vos idées.

5. Prenez vos notes en anglais : c’est ce que vous entendez, c’est donc plus facile et vous n’aurez qu’à copier ce que vous avez compris sans avoir à le traduire.

6. Utilisez ce que vous comprenez pour inférer ce que vous comprenez moins bien. Repérez bien les mots accentués qui sont porteurs de sens. Ne vous bloquez pas sur un mot ou une phrase mal compris, vous risqueriez de laisser échapper la suite du document que vous comprendrez plus aisément. On n’attend pas de vous que vous compreniez tout mais que vous démontriez que vous avez compris les points essentiels et les détails significatifs du document.

7. N’essayez pas de traduire les noms propres. Vous pouvez utilisez des mots anglais dans votre compte-rendu uniquement s’ils sont passés dans le langage courant. Par exemple: web, email, shopping, weeekend…

8. Lors des écoutes, posez-vous les questions suivantes:

  • de quel type de document s’agit-il ? [ dialogue, discussion, interview, monologue, exposé, extrait d’une émission de radio ou de télévision, discours, micro-trottoir…]
  • quel est le contexte ? Des bruits de fond ou des indices sonores peuvent vous aider à identifier le contexte.
  • qui parle ? identifiez le ou les personnages, et la relation entre eux.
  • de quoi est-il question ? Identifiez le sujet, la problématique, les arguments, les opinions…
  • quel est le ton, le point de vue de celui ou ceux qui parle(nt) ?

9. C’est un compte-rendu que vous devez écrire, pas un résumé ! Les points sont accordés aux détails significatifs, qui permettent de juger la finesse de votre compréhension. Il faut donc être précis, pas général.

10. Lors de la rédaction de votre compte-rendu, vous devez organiser ce que vous avez compris en un texte construit. Vous pouvez partir d’informations générales (nature du document, identification des locuteurs et du sujet) pour enchaîner sur les détails les plus significatifs. En fonction du document, vous pouvez être amené à décrire l’attitude des personnages, leurs sentiments ou leur point de vue. Veillez à la cohérence de votre texte, soignez l’orthographe et la présentation. N’oubliez pas de lier des phrases entre elles et de vous relire.

Bon courage!

La continuité pédagogique

La continuité pédagogique est destinée à s’assurer que les élèves poursuivent des activités scolaires leur permettant de progresser dans leurs apprentissages.

Les activités proposées s’inscrivent naturellement dans le prolongement de ce qui s’est fait en classe auparavant et/ou dans une préparation possible de ce qui sera fait dès le retour dans l’établissement.

Le travail demandé doit être régulier. Il doit pouvoir être réalisé dans un temps raisonnable, indiqué explicitement. Le temps consacré à chaque discipline doit être corrélé aux horaires habituels. Les travaux proposés sont adaptés au niveau d’enseignement et aux capacités des élèves. Ils pourront être l’occasion de s’appuyer plus spécifiquement sur des compétences variées adossées au
travail autonome.

Supports de travail

La continuité pédagogique mobilise les supports usuels :

  • Les ressources de l’Espace Numérique de Travail ;
  • Des supports numériques, ressources créées par les enseignants et les ressources éditoriales disponibles (BRNE, Eduthèque…) ;
  • La plateforme du CNED « Ma classe à la maison » . Création d’un compte en tant qu’enseignant lors de la 1ère connexion.
  • Les manuels scolaires en possession des élèves.
  • Les ressources disciplinaires ou transversales du site académique et des autres sites institutionnels.

Les Banques de Ressources Numériques pour l’École (BRNE)

Les Banques de Ressources Numériques pour l’École (BRNE) s’adressent à tous les professeurs du premier et du second degré. Elles offrent gratuitement aux professeurs et aux élèves des ressources pour enseigner et apprendre. Les professeurs bénéficient de l’ensemble des contenus et des services pédagogiques (boîte à outils pour composer des activités numériques interactives) soit en s’inscrivant à l’aide de leur adresse professionnelle académique pour bénéficier d’un accès, soit via l’ENT de leur établissement

Les 14 Banques pour enseigner et pour apprendre du CM1 à la 3e peuvent être utilisées dans les autres niveaux d’enseignement en amont et en aval. Les contenus sont modifiables et les outils permettent aux enseignants de structurer les séquences et activités proposées aux élèves. Les enseignants peuvent également récupérer les travaux.

CM1, CM2 et 6e

5e, 4e et 3e

École, collège, lycée

ÉTINCEL, des ressources pour les enseignements généraux, technologiques et professionnels

La plateforme ÉTINCEL est ouverte à l’ensemble des enseignants et des personnels de l’Éducation nationale qui possèdent une adresse de messagerie académique. La plate-forme propose des ressources numériques (animations, jeux sérieux, vidéos) et de nombreux scénarios pédagogiques modifiables.

  • Pour les enseignements généraux, les situations et les ressources pédagogiques se situent dans un contexte ou une problématique industrielle. Il s’agit essentiellement de modélisations.
  • Pour les enseignements technologiques et professionnels sont proposées des études de cas, des situations professionnelles authentiques, s’appuyant sur la réalité industrielle.

Éduthèque, un portail de ressources de grands établissements publics à caractère culturel et scientifique

Le portail éduthèque s’adresse à tous les enseignants du premier et du second degré. Ils peuvent ouvrir un compte enseignant et un compte classe associé à l’aide de leur adresse professionnelle.

éduthèque fournit aux enseignants et leurs élèves un accès gratuit et sécurisé à:

  • plus de 80 000 ressources numériques pédagogiques issues d’offres de grands établissements publics à caractère culturel et scientifique : images, vidéos, fichiers audio, animations, textes, maquettes animations 3D,
  • des fonctionnalités dédiées,
  • des supports pédagogiques proposés par les partenaires du ministère.

Pour l’enseignant, le portail éduthèque propose un moteur de recherche qui lui permet, à partir de mot(s)-clé(s) de son choix, d’identifier en un clic des ressources numériques.

Lumni Enseignement

La plateforme unique Lumni regroupe les ressources d’Arte, de France Médias Monde, de France Télévisions, de l’INA, de Radio France et de TV5Monde.

En parallèle des contenus destinés au grand public et aux éducateurs, plus de 3 000 ressources numériques sont spécifiquement dédiées aux enseignants de l’école au lycée et sont regroupées dans l’offre Lumni Enseignement proposée sur la plateforme éduthèque.

Cette nouvelle offre regroupe et remplace les offres Éduthèque INA-Jalons, Arte, Lesite.tv et Radio France. Ces différents acteurs associés au ministère de l’Éducation nationale et de la Jeunesse, au ministère de la Culture, à Réseau Canopé, au Clemi, ou encore à la Ligue de l’enseignement, permettent notamment aux enseignants de :

  • visionner, télécharger et partager les contenus audio, vidéo, articles et pistes pédagogiques ;
  • créer et sauvegarder des extraits vidéo ;
  • organiser et annoter des ressources dans des classeurs personnels ;
  • naviguer dans des sélections proposées selon les programmes scolaires, du cycle 1 à la terminale.

La plateforme Lumni propose aux élèves seuls ou accompagnés d’apprendre autrement et de prolonger les cours. Elle permet aux enseignants de disposer de ressources expertisées au service de la transmission et de l’apprentissage. Plus de 3000 ressources sont indexées par niveaux, et disciplines du programme scolaire pour préparer, illustrer ou prolonger les cours, et les partager avec les élèves. Des entrées spécifiques sont disponibles pour les révisions du brevet 2020 et du bac 2020.

Javascript : afficher le contenu d'un bloc HTML après un délai variable photo

J’ai eu besoin de tester l’existence d’un paramètre GET dans une URL en utilisant JavaScript. Il se trouve que cela ne prend que quelques lignes.

Pour ce tutoriel, nous allons considérer l’adresse de la page suivante, avec preview=yes passé comme paramètre:

https://example.com/?preview=yes

1. On récupère les paramètres passés dans l’URL de la page:

let searchParams = new URLSearchParams(window.location.search);

2. On vérifie si l’un des paramètres recherchés est présent. Ici, on souhaite savoir si le paramètre previewexiste:

searchParams.has('preview'); // returns true

3. On vérifie maintenant si previewest égal à yes:

let param = searchParams.get('sent');
param; // echoes 'yes'

Il ne nous reste plus qu’à utiliser la variable param pour l’utiliser ou la comparer.

Gravity Forms permet de créer rapidement des formulaires avec des logiques conditionnelles sous WordPress.

Dans les options de Gravity Forms, il existe une option qui ajoute un champ caché au formulaire, « honeypot », qui permet d’éviter le spam mais qui doit être activé manuellement pour chaque formulaire, ce qui peut être rapidement fastidieux selon le nombre de formulaires que vous avez sur le site.

Voici comment activer et ajouter le champ honeypot à tous vos formulaires, automatiquement:

<?php
/**
 * Enforce anti-spam honeypot on all Gravity forms.
 *
 * @param array $form The current form to be filtered.
 * 
 * @return array
 */
add_filter( 'gform_form_post_get_meta', __NAMESPACE__ . '\\sky_enforce_gravity_forms_anti_spam_honeypot' );
function sky_enforce_gravity_forms_anti_spam_honeypot( $form ): array {
	$form['enableHoneypot'] = true;
	return $form;
}

Lors de la mise à jour d’un site vers PHP 7.4, je suis tombé sur cette erreur :

preg_match(): Compilation failed: invalid range in character class at offset 20 session.php on line 278

Depuis PHP 7.3, le moteur PCRE – qui est responsable de la gestion des expressions régulières – a été migré vers PCRE2. Or, il s’avère que PCRE2 est plus strict dans la validation des pattern et c’est la raison pour laquelle, après la mise à jour de PHP, certaines expressions régulières ne peuvent plus être compilées correctement.

Voici un exemple d’expression régulière qui fonctionnait avant PHP7.3:

preg_match('/[\w-.]+/', ''); // this will not work in PHP7.3

Voici maintenant le même exemple mais qui sera désormais valide sous PHP 7.3 et les versions ultérieures :

preg_match('/[\w\-.]+/', ''); // the hyphen needs to be escaped

Comme vous pouvez le constater dans le deuxième exemple, il faut maintenant échapper le tiret (hyphen) avec un backslash. Une fois la modification faite, plus d’erreur à ce niveau.

Redémarrer la machine virtuelle de Local by Flywheel photo

J’utilise quotidiennement Local by Flywheel pour développer ou debugger des problèmes sur certains sites. C’est une bonne alternative lorsque les hébergeurs ne proposent pas de site staging à leurs clients (les meilleurs hébergeurs proposent évidemment un staging, c’est la base).

L’autre jour, tournée de mises à jour suivie d’un reboot, je lance Local et patatras: il ne veut plus démarrer et visiblement reste bloqué sur une tentative de renouvellement de certificat TLS pour la machine virtuelle qui tourne sous Docker.

Si cela vous arrive, voici la marche à suivre. Il suffit de copier ces lignes d’instructions dans votre terminal. Concrètement, nous allons télécharger une nouvelle version du fichier ISO Boot2Docker et laisser le système se ré-provisionner.

Le processus implique de créer un alias (local-docker-machine) pour la machine virtuelle docker “Local by Flywheel”, et ensuite de lancer la série de commandes suivantes sur cet alias.

Voici les commandes à lancer dans le terminal:

alias local-docker-machine="/Applications/Local\ by\ Flywheel.app/Contents/Resources/extraResources/virtual-machine/vendor/docker/osx/docker-machine"
local-docker-machine stop local-by-flywheel
rm -rf ~/.docker/machine/certs
local-docker-machine create local-cert-gen
local-docker-machine start local-by-flywheel
local-docker-machine regenerate-certs -f local-by-flywheel
local-docker-machine rm -f local-cert-gen

Voici le résultat de ces commandes:

Creating CA: /Users/matt/.docker/machine/certs/ca.pem
Creating client certificate: /Users/matt/.docker/machine/certs/cert.pem
Running pre-create checks...
(local-cert-gen) No default Boot2Docker ISO found locally, downloading the latest release...
(local-cert-gen) Latest release for github.com/boot2docker/boot2docker is v19.03.5
(local-cert-gen) Downloading /Users/matt/.docker/machine/cache/boot2docker.iso from https://github.com/boot2docker/boot2docker/releases/download/v19.03.5/boot2docker.iso...
(local-cert-gen) 0%....10%....20%....30%....40%....50%....60%....70%....80%....90%....100%
Creating machine...
(local-cert-gen) Copying /Users/matt/.docker/machine/cache/boot2docker.iso to /Users/matt/.docker/machine/machines/local-cert-gen/boot2docker.iso...
(local-cert-gen) Creating VirtualBox VM...
(local-cert-gen) Creating SSH key...
(local-cert-gen) Starting the VM...
(local-cert-gen) Check network to re-create if needed...
(local-cert-gen) Found a new host-only adapter: "vboxnet1"
(local-cert-gen) Waiting for an IP...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with boot2docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: /Applications/Local by Flywheel.app/Contents/Resources/extraResources/virtual-machine/vendor/docker/osx/docker-machine env local-cert-gen
Docker machine "local-by-flywheel" does not exist. Use "docker-machine ls" to list machines. Use "docker-machine create" to add a new one.
Regenerating TLS certificates
Docker machine "local-by-flywheel" does not exist. Use "docker-machine ls" to list machines. Use "docker-machine create" to add a new one.
About to remove local-cert-gen
WARNING: This action will delete both local reference and remote instance.
Successfully removed local-cert-gen

Vous n’avez plus qu’à lancer Local by Flywheel: lancement maintenant impeccable et toutes les machines virtuelles sont bien là.

jQuery : sélectionner un élément dont l'ID ou la classe commence ou finit par une chaîne photo

jQuery possède une limitation qui peut s’avérer très gênante : on ne peut ajouter !important à une propriété CSS en utilisant un script jQuery.

Par exemple, ceci ne fonctionnera pas:

jQuery('.foo').css('border', '4px #000 solid !important');

alors que cette déclaration sera bien appliquée:

jQuery('.foo').css('border', '4px #000 solid');

Pour contourner cette limitation, je vous propose plusieurs solutions.

Première solution : utiliser la fonction addClass()

C’est probablement la solution la plus simple : il suffit d’ajouter une classe votre élément avec addClass(), puis de définir le code CSS relatif à cette classe.

Exemple:

jQuery('.foo').addClass('border-black');

et on ajoute le code CSS suivant:

.border-black{
    border: 4px #000 solid !important;
}

Deuxième solution : utiliser la fonction attr()

Une autre solution est d’utiliser la fonction attr(), avec une concaténation pour garder le style CSS inline s’il est déjà présent:

jQuery('.foo').attr('style', function(i,s) { return (s || '') + 'border:4px #000 solid !important;' });

Troisième solution : utiliser la propriété cssText

Toujours en utilisant la concaténation pour garder les styles inline existants, nous utilisons la propriété cssText de la fonction css() :

jQuery('.foo').css('cssText', jQuery('.foo').css('cssText')+'border: 4px #000 solid !important');

Quatrième solution : utiliser style.setProperty()

Ce n’est pas parce que l’on utilise jQuery que nous devons oublier le vanilla JavaScript. En l’occurrence, JS offre nativement la fonction style.setProperty() qui nous permet d’appliquer notre style aisément:

jQuery('.foo').each(function(){
   this.style.setProperty( 'border', '4px #000 solid', 'important' );
});

Have fun!

Ces derniers temps, il n’est pas rare de constater que le serveur DNS de Free, utilisés par la Freebox, ne permettent plus de consulter certains sites. Or, l’utilisation d’un VPN permet d’accéder à ces sites sans problèmes.

Il est donc temps de changer l’adresse des serveurs DNS de la Freebox, on ne peut décemment pas utiliser un internet bridé par un tiers sans notre consentement.

Voici la marche à suivre, cela prend environ 1 minute à modifier. Nous allons utiliser les serveurs DNS de Cloudflare pour cet article:

  1. Rendez-vous dans la console Freebox sur http://mafreebox.free.fr
  2. Identifiez-vous.
  3. Rendez-vous dans Paramètres de la Freebox > DHCP.
  4. En serveur DNS1, mettez 1.1.1.1
  5. En serveur DNS2, mettez 1.0.0.1
  6. En serveur DNS3, gardez le DNS de Free en redondance: 192.168.0.254
  7. Appliquez les changements pour sauvegarder la nouvelle configuration.

Voici ce que cela donne en image:

Une autre alternative est d’utiliser les DNS de Quad9:

DNS1: 9.9.9.9

DNS2: 149.112.112.112

Et voilà, les sites auparavant bloqués sont désormais accessibles.

Dernièrement, je suis tombé sur un os lors du renouvelement d’un certificat Let’s Encrypt d’un site qui tourne sur un serveur avec Plesk.

Il se trouve que le renouvellement était tout simplement impossible à cause d’une erreur 400 Bad Request:

Attempting to renew cert (example.com) from /etc/letsencrypt/renewal/example.com.conf produced an unexpected error: Failed authorization procedure. www.example.com (http-01): urn:ietf:params:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://www.example.com/.well-known/acme-challenge/2VQAX5eA_dSyl1RB5MjfcHr9YinF8T7nw3Z6OxU5Zu4: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>400 Bad Request</title>\n</head><body>\n<h1>Bad Request</h1", example.com (http-01): urn:ietf:params:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://example.com/.well-known/acme-challenge/e4Y1e16A6e3czI1106dJiz6BMqsKjJxz21XaqvrHLZQ: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>400 Bad Request</title>\n</head><body>\n<h1>Bad Request</h1". Skipping.

Après avoir passé pas mal de temps à auditer le site, les .htaccess, la configuration du serveur… il se trouve que la solution est très simple – mais encore faut-il le savoir car cela n’est marqué nulle part!

Sous Plesk:

1. rendez-vous dans le workspace du site en question.

2. cliquez sur SSL/TLS certificates.

3. décochez la case Redirect from http to https:

Relancez maintenant le renouvellement du certificat Let’s Encrypt. Il devrait maintenant se renouveler sans aucun problème.

HONEYHONEY performing « Thin Line » at Music City Roots live from the Loveless Cafe in 2012

Thin line
Walking a thin line
Staying out late at night

I’m not happy
Feeling low
It’s so hard these days to play my cards right

It’s about time
To start the show
I got tickets for my friends that want to go

And I wish you’d come down
Just come on by
Oh, I need your easy roll around of a good time

‘Cause I want whiskey when I’m sick
And a man when I’m well
But it’s nice to have them both sometimes
When I feel like raising hell

So don’t try and save me
I’ll be just fine
I’m getting used to walking on a thin line

Some days I try hard
To watch my mouth
To say the right things
But the wrong just slip right out

Oh, I ain’t no Southern belle
No Georgia peach
I guess all my good graces are too far out of reach

I sleep so deep each night
I’m lying in the bed we made
And when I get you off, babe
Well you know it’s give and take

So I don’t feel bad
When I get mine
Oh, I’m getting used to walking on a thin line

Sometimes I’m doing things half-ass wrong
Sometimes the words I sing are just some half-ass song
I get lost and I get found
Oh, and I’ll be good until I need another round

‘Cause I want whiskey when I’m sick
And a man when I’m well
But it’s nice to have them both sometimes
When I feel like raising hell

So don’t try and save me
I’ll be just fine
Oh, I’m getting used to walking on a thin line

No, don’t try and save me
I’ll be just fine
Oh, I’m getting used to walking on a thin line

Oh, I’m getting used to walking on a thin line

Rapport de faute d’orthographe

Le texte suivant sera envoyé à nos rédacteurs :