Cetak Pemenang Gambar Terbaik Oscar

49

Tantangan ini sebagai penghormatan kepada pemenang Best Picture di Oscar 2017, La La Land Moonlight!


Tantangan Anda adalah mencetak teks

La La Land
jeda satu detik, lalu ubah teks untuk ditampilkan

La La Land Moonlight
Teks asli (La La Land) harus dicoret . Ini dapat dicapai baik dengan membersihkan layar, menggambar di atas teks asli, atau dengan solusi pintar lainnya.

Ini adalah sehingga byte terendah menang. Aturan standar kode-golf berlaku.

vikarjramun
sumber
Oh wow! Tantangan saya diterima dengan sangat baik hingga diposting di Twitter
vikarjramun
Saya bertanya-tanya apakah ada bahasa yang bisa menggunakan fakta La La La(nd)polanya
12Me21

Jawaban:

13

Jelly , 31 byte

“XSøjĠḌ⁻Ça»Œts⁵µṀȮ⁸œS“Æɓ9m“ɓm”ż

Diuji dengan xterm dan LANG=en_US. Tidak berfungsi pada TIO karena beberapa alasan.

Hexdump

00000000: 58 53 1d 6a c4 ad 8b 0e 61 fb 13 74 73 85 09 c8  XS.j....a..ts...
00000010: ca 88 1e 53 fe 0d 9b 39 6d fe 9b 6d ff f9        ...S...9m..m..

Verifikasi

Cuplikan Layar

Latar Belakang

Jawaban ini memanfaatkan karakter kontrol dan urutan pelarian ANSI .

  • 0d( <CR>) digunakan untuk kembali ke awal liner setelah mencetak La La Land .

  • 9b 39 6d( <CSI> 9 m) digunakan untuk mengaktifkan teks pemogokan sebelum mencetak La La Land untuk kedua kalinya.

  • 9b 6d( <CSI> m) digunakan untuk mengatur ulang latar depan dan latar belakang ke mode default, sehingga menonaktifkan pemogokan, sebelum mencetak Moonlight .

Bagaimana itu bekerja

“XSøjĠḌ⁻Ça»Œts⁵µṀȮ⁸œS“Æɓ9m“ɓm”ż Main link. No arguments.

“XSøjĠḌ⁻Ça»                     Index into Jelly's inbuilt dictionary to yield
                                "LA LA Land moonlight".
           Œt                   Convert to title case, yielding the string
                                "La La Land Moonlight".
             s⁵                 Split into chunks of length 10, yielding
                                A =: ["La La Land", " Moonlight"].
               µ                Begin a new chain with argument A.
                Ṁ               Take the maximum, yielding "La La Land".
                 Ȯ              Output; print "La La Land".
                  ⁸œS           Sleep for bool("La La Land") seconds and yield A.
                     “Æɓ9m“ɓm”ż Zip ["\r\x9b9m", "\x9bm"] with A, yielding
                                [["\r\x9b9m","La La Land"],["\x9bm"," Moonlight"]].
                                (implicit) Flatten and print.
Dennis
sumber
26

Vim, 37 byte

3iLa <esc>snd<esc>gs:s/./&<C-v>u336/g
A Moonlight

Solusi yang cukup mudah.

Berikut ini animasi yang sedang berjalan:

masukkan deskripsi gambar di sini

DJMcMayhem
sumber
Tapi tidak ada tidur :(
Cruncher
1
@Cuncher Ya ada! gstidur selama satu detik.
DJMcMayhem
Menarik, bagaimana biasanya Anda menjalankan ini? Karena saya mengetik ini ke dalam vim dan berfungsi, tetapi kehilangan kilau keterlambatan kedua (dalam pengetikan lambat saya, saya bahkan tidak melihat penundaan karena saya menyalin dari sini)
Cruncher
Bagaimanapun, saya menemukan itu dengan makro. Sangat keren!
Cruncher
25

HTML, 153 148 byte

Menggunakan animasi CSS. Diuji hanya pada Firefox dan Chrome.

<s>La La Land</s> <b>Moonlight<style>@keyframes l{0%{text-decoration:none}}@keyframes m{0%{opacity:0}}b,s{animation:m 0s 1s both}s{animation-name:l}

<s> La La Land </s> <b> Cahaya Bulan </b>

kennytm
sumber
Anda dapat menempatkan salah satu @keyframesdeklarasi terakhir dan menghapus dua kurung kurawal penutupan.
darrylyeo
@dryrylyeo: Firefox menolak untuk menerapkan aturan jika ada yang }hilang, jadi sayangnya ini tidak dapat dilakukan.
kennytm
19

HTML + JavaScript, 18 + 59 = 77 byte

setTimeout('O.innerHTML="<s>La La Land</s> Moonlight"',1e3)
<p id=O>La La Land

Sayangnya, sepertinya tidak ada cara yang efisien untuk digunakan kembali O.innerHTML...

Produksi ETH
sumber
Akan setTimeout('a=O.innerHTML;a=a.strike()+" Moonlight"',1e3)bekerja
Kritixi Lithos
1
@ KritixiLithos Saya tidak berpikir begitu; memodifikasi di asana tidak akan berubah O.innerHTML.
ETHproduksi
18

Oktaf, 81 66 byte

15 byte disimpan berkat @Stewie

text(0,.5,'La La Land');pause(1);text(0,.5,'---------- Moonlight')

Demo Online Di Sini .

Sementara demo menunjukkan dua plot terpisah, ketika dijalankan dalam versi desktop MATLAB, itu menunjukkan plot pertama, menunggu 1 detik, dan kemudian menambahkan string kedua ke plot yang sama.

Karena Oktaf tidak memiliki dukungan untuk pemogokan melalui teks, saya malah memilih untuk menampilkan teks dalam suatu axesobjek dalam gambar dan menampilkan "dicoret" dengan menampilkan '--------'di atas teks awal (ide awal oleh @Stewie). Sebelumnya, saya benar-benar telah merencanakan lineobjek untuk diserang'La La Land'

masukkan deskripsi gambar di sini

Suever
sumber
1
Pendekatan yang bagus ... :) Anda dapat menyimpan 15 byte seperti ini: text(0,.5,'La La Land');pause(1);text(0,.5,'---------- Moonlight').
Stewie Griffin
@StewieGriffin Terima kasih! Diperbarui
Suever
Apakah Octave tidak membiarkan Anda melakukan '-'*8+hal yang sama?
Nic Hartley
@QPaysTaxes Sayangnya tidak.
Suever
1
Menisik. Satu pertanyaan lagi: Mengapa tidak menggambar di (0, 0) atau (1, 0)? Sepertinya salah satu dari mereka akan menghemat satu byte (tidak .)
Nic Hartley
10

Bash, 70, 69 66 byte

-4 Poin terima kasih kepada Riley

echo La La Land;sleep 1;echo -e "\r\e[9mLa La Land\e[0m Moonlight"

Penghargaan untuk jawaban Sylvain Pineau di AskUbuntu untuk dicoret

vikarjramun
sumber
1
Saya pikir Anda dapat menyimpan beberapa byte dengan menggunakan \ryang kedua, echobukan clear. Juga, Anda tidak membutuhkan ruang sebelum yang kedua echo.
Riley
Ini tidak mencetak spasi setelah teks dicoret.
Loovjo
Juga, saya pikir clear;harus pergi dulu. Dan Anda memiliki ruang yang tidak perlu di ; echo.
Erik the Outgolfer
2
Solusi lebih pendek yang menambahkan spasi setelah teks dicoret dan melakukan in-line modifikasi teks yang dicetak menggunakan kode ANSI \e[A, jadi tidak cleardiperlukan. Untuk info lebih lanjut tentang itu lihat saya . s="La La Land";echo $s;sleep 1;echo -e "\e[A\e[9m$s\e[0m Moonlight"
seshoumara
1
Atauecho -n La La Land;sleep 1;echo -e "\r\e[9mLa La Land\e[0mMoonlight"
Digital Trauma
9

QBasic, 61 byte

SCREEN 9
?"La La Land";
SLEEP 1
LINE(0,7)-(80,7)
?" Moonlight

Dengan menggunakan mode grafis, gambar garis yang sebenarnya melalui teks. Ini seperti apa di QB64 :

Sinar bulan

Kode harus cukup jelas, tetapi ini adalah versi tanpa tanda:

SCREEN 9             ' One of several graphics modes
PRINT "La La Land";  ' The semicolon suppresses the trailing newline
SLEEP 1
LINE (0,7)-(80,7)
PRINT " Moonlight"
DLosc
sumber
8

MATL, 46 byte

'La La Land'tDlY.ttv45HY(`t@Y)' Moonlight'hXxDT

Karena MATL tidak memiliki dukungan untuk kode kontrol atau format teks, solusi ini hanya bergantian antara 'La La Land'dan '-----------'secepat mungkin untuk mensimulasikan teks dicoret.

masukkan deskripsi gambar di sini

Penjelasan

'La La Land'   % Push the string literal to the stack
tD             % Duplicate this string and display
tv             % Stack a version of this string on top of another
45HY(          % Replace the second one with '----------'
`              % Do...while loop
  t            % Duplicate the 2D character array
  @Y)          % Grab the row corresponding to the loop index (modular indexing)
  ' Moonlight' % Push the string literal to the stack
  h            % Horizontally concatenate the two
  Xx           % Clear the display
  D            % Display the string
  T            % Push a literal TRUE to the stack to make it an infinite loop
Suever
sumber
1
Kreatif! Saya menyukainya
vikarjramun
3
+1 untuk kreativitas, tetapi tidak yakin apakah itu memenuhi aturan.
DBX12
5

Bash + pv , 50 byte

printf ♪La\ La\ Land›%b 9m\\0 m\ Moonlight|pv -0L1

Ini dibangun berdasarkan jawaban Bash @ DigitalTrauma .

mewakili carriage return ( 0x0d ), byte CSI ( 0x9b ).

Hexdump

0000000: 70 72 69 6e 74 66 20 0d 4c 61 5c 20 4c 61 5c 20  printf .La\ La\
0000010: 4c 61 6e 64 9b 25 62 20 39 6d 5c 5c 30 20 6d 5c  Land.%b 9m\\0 m\
0000020: 20 4d 6f 6f 6e 6c 69 67 68 74 7c 70 76 20 2d 30   Moonlight|pv -0
0000030: 4c 31                                            L1

Verifikasi

Cuplikan Layar

Bagaimana itu bekerja

printf mengulangi string formatnya sebanyak yang diperlukan untuk menguras argumen lainnya. Karena ada satu kemunculan %bdan dua argumen ( 9m\\0dan m\ Moonlight), itu akan menghasilkan aliran byte berikut.

\rLa La Land\x9b9m\0\rLa La Land\x9bm Moonlight

Ini melakukan hal berikut.

  • \r membawa kursor ke awal baris.

  • La La Land dicetak kata demi kata.

  • \x9b9m mengaktifkan teks pemogokan.

  • \0menetapkan penanda garis akhir untuk pv -0.

  • \rLa La Land melakukan hal yang sama seperti sebelumnya.

  • \x9bm atur ulang latar depan dan latar belakang ke mode default, nonaktifkan pemogokan.

  • Moonlight dicetak kata demi kata.

Akhirnya, pv -0L1mencetak satu baris nol-dihentikan per detik, memperkenalkan penundaan yang diinginkan.

Dennis
sumber
3
Apakah ini kebetulan yang membantu bermain golf Anda, atau apakah Anda secara khusus ingin menggunakannya dengan La La Land? Saya suka itu!
BruceWayne
Pengembalian kereta adalah cara terpendek untuk kembali ke awal baris. Fakta bahwa itu bergaya seperti kadang - kadang hanya kebetulan yang bahagia.
Dennis
Penggunaan pvbukannya sleepseperti orang lain itu indah.
IQAndreas
1
@IQAndreas Gagasan untuk digunakan pvadalah apa yang saya ambil dari jawaban Bash yang tertaut, jadi saya tidak bisa benar-benar menghargai itu.
Dennis
3

HTML + JavaScript, 10 + 63 = 73 byte

setTimeout("document.write('<s>La La Land</s> Moonlight')",1e3)
La La Land

nderscore
sumber
Di browser apa ini berfungsi?
Titus
2
@Titus Saya pikir mereka semua, tapi saya sudah mengkonfirmasi itu bekerja di Chrome + Firefox sejauh ini
nderscore
3

PHP ( 86 75 69 Bytes)

La La Land<?=sleep(1)?:"\rL̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight";

Menggunakan karakter UTF-8 U + 0336 untuk dicoret.

Sunting: Disimpan 17 byte dengan saran @Titus berkomentar

madshvero
sumber
1
sleepselalu mengembalikan 0; jadi Anda bisa melakukan sleep(1)?:" ̶L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight"(-3 byte). \rbukannya \033[10Dmenyimpan 6 byte dan memasukkannya ke dalam string akhir menyimpan 4. byte lain
Titus
Oh, wow, masing-masing yang seharusnya bisa saya lihat, saya kira itu datang dengan latihan. Terima kasih banyak! jika Anda ingin membuat jawaban Anda sendiri untuk mendapatkan rep, sebagai perbaikan 11 byte, saya dapat menghapus jawaban saya dan
membesarkan hati
Tidak perlu menghapus jawaban yang valid. Saya tidak memposting sendiri saat menerima jawaban orang lain - kecuali OP tidak bereaksi. Berikut adalah tiga byte lagi: Blank kosong tidak diperlukan, juga tidak dicoret pada blank terakhir. Menggunakan UTF-8 sebagai charset tidak curang; tetapi Anda bisa menyebutkan "menggunakan karakter UTF-8 U+0336untuk dicoret".
Titus
Oh dan La La Land<?=bukannya <?="La La Land",menyimpan 3 byte lagi.
Titus
3

Pyth - 47 byte

Apakah dicoret melalui hal sekarang.

K "La La Land" .d_1 "\ 033c" + j "\ u0336" K "Cahaya Bulan
Maltysen
sumber
Itu tidak bekerja; Anda memerlukan "di depan untuk +1.
Erik the Outgolfer
@EriktheOutgolfer> _ <tidak tahu bagaimana itu terjadi.
Maltysen
Apa itu <exmpty line>? Saya akan menyarankan <pre>tag.
CalculatorFeline
3

C 87 86 byte

f(){char*s="La La Land";puts(s);printf("\e[9m%s\e[0m",s);sleep(1);puts(" Moonlight");}

Versi tidak disatukan:

void f()
{
  char *s="La La Land";
  puts(s);
  printf("\e[9m%s\e[0m",s);
  sleep(1);
  puts(" Moonlight");

}
Abel Tom
sumber
2
Anda tidak perlu ruang antara chardan *.
kennytm
Anda juga perlu menelepon f()dalam versi yang tidak diserang, bukan?
Rodrigo Hahn
@kennytm Thnaks untuk menghemat 1 byte. Diperbarui.
Abel Tom
1
@RodrigoHahn Secara default jawaban kode-golf dapat berupa fungsi atau program , jadi tidak perlu kita panggil f().
kennytm
3

HTML + JavaScript, 100 byte

La La Land<script>setTimeout(function(){document.write("<s>La La Land</s> Moonlight")},1e3)</script>

setTimeout(function(){document.write("<s>La La Land</s> Moonlight")},1e3);
La La Land

Sourav
sumber
Kenapa document.write menimpa teks yang ada?
vikarjramun
jika dokumen Anda dimuat sepenuhnya maka Anda menggunakan document.write (seperti melampirkan dengan acara atau dengan batas waktu) akan menghapus semua HTML yang ada. refer = w3schools.com/jsref/met_doc_write.asp
Sourav
3

GNU sed + sleep, 63 58 byte

Sunting: disimpan 5 byte, berdasarkan komentar Digital Trauma

Menunggu antara dua pernyataan cetak tidak dapat dilakukan dengan menggunakan sendiri, dan karena itu saya sebut sleep 1. Dimungkinkan untuk melakukan panggilan sistem dari sed, menggunakan eperintah, yang merupakan ekstensi GNU.

s:$:La La Land:p
esleep 1
s:.:&̶:g
s:.*:\c[[A& Moonlight:

Untuk membuat teks pemogokan (baris 3), "kombinasi long stroke overlay", U + 0336 , ditambahkan ke setiap karakter. Setelah itu, saya memindahkan kursor ke atas 1 baris, secara efektif mengganti teks lama ketika mencetak sesuatu yang baru, menggunakan yang disebut ANSI Escape Sequences . Ini ditafsirkan oleh terminal sebagai perintah pemformatan khusus. Anda dapat menemukan informasi lebih lanjut tentang mereka di sini .

gambar gif

Penjelasan:

s:$:La La Land:p         # add "La La Land" to pattern space and print it
esleep 1                 # run system command 'sleep 1'
s:.:&̶:g                  # append U+0336 after each character (strike-through)
s:.*:\c[[A& Moonlight:   # '\c[[A' is '(escape)[A', ANSI code to move the cursor
                         #up 1 line. Then append ' Moonlight' and print on exit.
seshoumara
sumber
1
@DigitalTrauma Benar-benar lupa tentang \c, penemuan yang bagus! Adapun unicode khusus itu, ini pertama kali saya mendengarnya, tetapi memang berhasil. Ketika dicetak oleh halaman ini, itu dikombinasikan dengan spemisah perintah :, jadi agak aneh melihatnya pada awalnya.
seshoumara
3

Java 7, 207 206 171 139 byte

void c()throws Exception{System.out.print("La La Land");Thread.sleep(1000);System.out.print("\rL̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight");}

Saya agak curang dengan jawaban pertama ini, karena saya menggunakan unicode pemogokan .

Penjelasan:

void c() throws Exception{         // Method (throws is necessary due to Thread.sleep)
  System.out.print("La La Land");  //  Show initial text
  Thread.sleep(1000);              //  Wait 1 second
  System.out.print("\r             //  Move 'cursor' to the start of the line so we can overwrite the current text
    L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight");        //  and print new text
}                                  // End of method

Java 7 (dengan AWT), 444 429 341 byte

Dicoret 444 masih teratur 444; (

import java.awt.*;import java.text.*;void m(){new Frame(){public void paint(Graphics g){g.drawString("La La Land",9,50);try{Thread.sleep(1000);}catch(Exception e){}AttributedString s=new AttributedString("La La Land Moonlight");s.addAttribute(java.awt.font.TextAttribute.STRIKETHROUGH,1>0,0,10);g.drawString(s.getIterator(),9,50);}}.show();}

Karena konsol Java tidak memiliki markup seperti mogok, Anda harus menggunakan Java AWT. Dan, jika Anda berpikir Java Console sudah bertele-tele, maka ini bahkan lebih buruk (saya tahu, saya tahu, sebagian besar dari Anda bahkan tidak bisa membayangkan Java 7 menjadi lebih buruk ..)

Penjelasan:

import java.awt.*;                                         // import used for Frame and Graphics
import java.text.*;                                        // Import used for all AttributedStrings
void m(){                                                  // method
  new Frame(){                                             //  Frame
    public void paint(Graphics g){                         //   Overridden paint method
      g.drawString("La La Land", 9, 50);                   //    Show the initial text
      try{
        Thread.sleep(1000);                                //    Wait 1 second
      }catch(Exception e){}                                //    Thread.sleep requires a try-catch..
      AttributedString s
          = new AttributedString("La La Land Moonlight");  //    Object to add markup to text
      s.addAttribute(
        java.awt.font.TextAttribute.STRIKETHROUGH,         //    Strike-through attribute
        1>0,//true                                         //    Mandatory parameter before we can specify the length
        0, 10);                                            //    From length 0 to 10 (length of "La La Land")
      g.drawString(s.getIterator(), 9, 50);                //    Show this new text with strike-through part
    }                                                      //   End of paint method
  }.show();                                                //  Show Frame
}                                                          // End of method

Output gif:

masukkan deskripsi gambar di sini

Kevin Cruijssen
sumber
Saya pikir Anda dapat menghapus ruang String[] adan menggunakan 1e3bukannya1000
Kritixi Lithos
@KritixiLithos Ruang itu seharusnya sudah hilang .. mungkin terlewat saat bermain golf. Adapun 1e3, itu ganda, dan Thread.sleepberharap lama. 1000lebih pendek dari (long)1e3. :)
Kevin Cruijssen
2
Maksudmu Swing, bukan Spring, bukan? Saya hampir mengalami serangan jantung! Spring in a codegolf ... Juga, untuk menyimpan byte, Anda dapat menggunakan AWT, bukan Swing.
Olivier Grégoire
@ OlivierGrégoire Ah, salah ketik, saya memang bermaksud Swing .. Dan terima kasih, AWT lebih pendek, tidak perlu untuk Swing (atau Spring: P) sama sekali.
Kevin Cruijssen
1
Saya membuat versi AWT fungsi (Java 7) dengan kelas dalam anonim. Saya menghapus omong kosong AttributedString pertama dan bermain golf lebih banyak dengan total 306 byte. Jika Anda menggunakan Java 8, itu masih 302 byte. void m(){new Frame(){public void paint(Graphics g){g.drawString("La La Land",99,99);try{Thread.sleep(1000);}catch(Exception e){}AttributedString s=new AttributedString("La La Land Moonlight");s.addAttribute(java.awt.font.TextAttribute.STRIKETHROUGH,1>0,0,10);g.drawString(s.getIterator(),99,99);}}.show();}
Olivier Grégoire
2

Python 3, 90 byte

Gunakan Unicode (U + 0336) untuk menerobos, karena terminal macOS tidak mendukung \e[9mperintah itu.

import time
s='La La Land '
print(s,end='\r')
time.sleep(1)
print('̶'.join(s),'Moonlight')

L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Cahaya Bulan

kennytm
sumber
2

Arduino, 332 331 byte

Tidak bersaing, hanya untuk bersenang-senang.

#include<LiquidCrystal.h>
LiquidCrystal lcd(7,8,9,10,11,12);String a="La La Land";String b="-- -- ----";void setup(){lcd.begin(16,2);}void loop(){lcd.home();lcd.print(a);delay(1000);lcd.clear();lcd.print(b);lcd.setCursor(0,2);lcd.print("Moonlight");while(1){delay(150);lcd.home();lcd.print(a);delay(150);lcd.home();lcd.print(b);}}

Bill of material:

  • 1 x Arduino Uno
  • 1 x LCD 16 x 2
  • Potensiometer 1 x 10K
  • 1 x 180 ohm Resistor

L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Cahaya Bulan

fluks
sumber
1
Selamat datang di situs ini. Saya tidak tahu seberapa miripnya Arduino dengan C tetapi saya cukup yakin Anda dapat menghapus ruang di dalam#include
Wheat Wizard
Dengan perhitungan saya, biaya perangkat keras 30 byte (2 untuk resistor, 3 untuk potensiometer, 1 untuk pengaturannya, 10 (untuk perubahan) untuk LCD, dan 14 untuk kabel (1 byte per kawat)). Namun, ini hanya saran. Juga, TIO mengatakan kode hanya 331 byte. Apakah ada baris baru yang tertinggal?
CalculatorFeline
@ WoatWizard itu benar. memperbaikinya!
fluxa
1
Poin bagus @ CalculatorFeline, tetapi dalam hal ini, kita juga harus menghitung biaya perangkat keras dari semua jawaban lainnya. Mungkin pengaturan saya adalah yang termurah. : D
fluxa
... D8 Semuanya selesai D8
CalculatorFeline
2

Python3, 99 byte

import time
l='La La Land'
s='\u0336'
print(l,end="\r")
time.sleep(1)
print(s.join(l)+' Moonlight')
Miguel
sumber
Jika Anda mengatur l = 'La La Land tidak bisa Anda menghindari +suntuk -2 karakter? .
walpen
@walpen Saya harus menggunakannya dua kali, itu sebabnya saya menyimpannya di s
Miguel
1

Bash + pv, 62

l="La La Land"
printf "$l\0\r\e[9m$l\e[0m Moonlight"|pv -0qlL1
Trauma Digital
sumber
1

SmileBASIC, 45 byte

Satu byte lebih sedikit berkat trik periode ajaib 12Me21.

Sejauh yang saya ketahui, SB tidak memiliki karakter yang dicoret, jadi saya menggunakannya GLINEsebagai gantinya. Jelas mengasumsikan tampilan yang jelas, gunakan ACLSjika Anda perlu.

?"La La Land
WAIT 60GLINE.,4,79,4?" Moonlight
siput_
sumber
1

AHK, 102 byte

s=La La Land
Send,%s%
Sleep,1000
Send,^a{Del}
Loop,Parse,s
Send,%A_LoopField%{U+0336}
Send,` Moonlight

Saya sedikit curang untuk mendapatkan teks yang dicoret dengan menggunakan karakter unicode overlay penggabungan panjang . Ini dapat membuat penampilan yang aneh tergantung pada pengaturan Anda. Notepad memberikan tampilan yang bagus.

Kode sedang beraksi


AutoHotkey jelas bukan bahasa yang paling efisien untuk ini, tetapi itu adalah tantangan yang menyenangkan. Hati-hati di mana Anda menjalankannya karena itu tidak membuat tampilan sendiri dan menghapus semua teks dari jendela apa pun yang aktif.

Toast insinyur
sumber
1

Swift, 392 byte

Swift + UIKit benar-benar tidak ideal untuk bermain golf! Jalankan ini di taman bermain XCode dan hasilnya akan ditampilkan di panel pratinjau.

import UIKit
import PlaygroundSupport
let l=UILabel(frame:CGRect(x:0,y:0,width:200,height:20))
l.textColor=UIColor.red
let m="La La Land"
let n=" Moonlight"
l.text=m
DispatchQueue.main.asyncAfter(deadline:.now()+1){
let a=NSMutableAttributedString(string:m+n)
a.addAttribute("NSStrikethrough",value:1,range:NSRange(location:0,length:10))
l.attributedText=a
}
PlaygroundPage.current.liveView=l

pratinjau

Mat
sumber
Apakah ini l.textColor=UIColor.redperlu?
Albert Renshaw
tampaknya default ke teks hitam pada latar belakang hitam sebaliknya
Matt
0

Jelly , 41 byte

“ñ[“m‘Ọj
“¡ṭḊßȥṡoẋ»¹13Ọ;9Ǥ;;0Ǥ;“"dE»œS1

Tidak berfungsi pada juru bahasa online.

Erik the Outgolfer
sumber
Kenapa tidak? Bisakah kompatibilitas ditambahkan dengan murah?
CalculatorFeline
@ CalculatorFeline Tidak, Dennis harus menerapkan kode kontrol agar berfungsi, dan itu bukan prioritasnya saat ini.
Erik the Outgolfer
Bisakah Anda memberikan tangkapan layar / animasi gambar output?
ʰᵈˑ
@ ʰᵈˑ Mungkin saya lakukan, meskipun tidak ada jaminan. Sementara itu, Anda dapat mengunduh penerjemah dan mengujinya sendiri :)
Erik the Outgolfer
0

Python (137 Bytes)

from turtle import *;import time;write("La La Land");time.sleep(1);clearscreen();write("\u0336".join("La La Land ")+" Moonlight");done()
hubacub
sumber
2
Anda tidak perlu ruang setelah import. Saya juga menyarankan untuk menyimpan "La La Land" sebagai variabel.
Wheat Wizard
0

TI-BASIC, 57 53 byte

:" LA
:Text(3,4,Ans+Ans+Ans+"ND
:Pause "",1
:Line(-9,8,-2,8
:Text(3,41,"MOONLIGHT

Perhatikan bahwa ini menggunakan kemampuan TI-84 + CE dengan OS terbaru untuk berhenti selama 1 detik. Ini akan mengembalikan kesalahan synthax pada TI-84 +. Untuk pengujian, Anda dapat menghilangkan jeda 1 detik dengan menghapus garis itu. Ingat juga untuk menekan Zoom, 6 terlebih dahulu sehingga Anda berada di pengaturan jendela default, jika tidak, perintah baris tidak akan berfungsi.

Rasio Emas
sumber
0

SpecBAS - 58 byte

1  ?"La La Land ";
2 WAIT 1e3
3 DRAW 0,4;80,0
4  ?"Moonlight"

Setiap karakter berukuran 8x8 piksel, sehingga menarik garis dari 0,4 ke posisi relatif 80,4 (80 ditambahkan ke koordinat pertama dan 0 ke detik sehingga tetap pada garis yang sama).

masukkan deskripsi gambar di sini

Brian
sumber
0

MINYAK , 76 byte

↩︎⎋[9m
La La Land
⎋[0m Moonlight
4
1
10
20
4
14
10
9
20
6
5
4
0
4
1
4
2
89999

Ganti dengan karakter pelarian dan ↩︎dengan carriage return. OIL tidak memiliki perintah tidur apa pun, jadi saya menirunya menggunakan loop yang menghitung mundur dari 89999 menjadi 1. Dibutuhkan sekitar satu detik di komputer saya, tetapi mungkin tidak pada Anda.

3 baris pertama diabaikan oleh penerjemah, kemudian mencetak ( 4) baris kedua (baris 1; "La La Land"). Struktur berikut adalah loop yang mengurangi angka besar di ujung sampai sama dengan 1. Pada akhirnya, saya hanya mencetak 3 baris pertama.

L3viathan
sumber
0

PHP, tidak bersaing (64 byte)

<?=$s="\rLa La Land",sleep(1)?:wordwrap($s,1,--,1)," Moonlight";

menggunakan UTF-8: --singkatan U+0336- tetapi saya cukup yakin bahwa itu tidak berfungsi berdiri sendiri.

Jika tidak, coba ~"1I"atau ~I1alih-alih --(+3 atau +1 byte).

Tidak ada waktu untuk menyimpannya di file atau mencari tahu cara mengatur konsol saya ke UTF-8; jadi saya tidak bisa menguji salah satu dari ini; tapi siapa pun bisa: tolong beri tahu saya apakah ini BS lengkap atau tidak.

Titus
sumber
0

Powershell, 63 byte

Hanya bekerja di PowerShell ISE. Non-bersaing, karena dicoret oleh satu karakter dan aku tidak bisa memperbaikinya.

'La La Land',('̶'*10+' Moonlight')|%{sleep 1;Write-Host $_ -N}

L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Cahaya Bulan

beatcracker
sumber